Tommy's 2 solutions:
IE7, Opera and FF3
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<style type="text/css">
* {margin:0; padding:0}
body {margin:1em}
a {display:block; padding:0.25em 0; color:#000; text-decoration:none}
li {list-style-type:none}
div {width:14.7em; height:20em; border:6px inset #900; padding:2px; background-color:#f00}
div>ol>li {float:left; width:3.5em; border:0.05em solid #000; background-color:#ff0; text-align:center}
div>ol>li:first-child {background-color:#090; color:#fff}
div>ol>li:first-child a {color:#fff}
div>ol:hover>li:first-child {background-color:#ff0; color:#000}
div>ol:hover>li:first-child a {color:#000}
div>ol>li a:hover {background-color:#f90; color:#000}
div>ol>li:first-child+li+li+li+li+li+li+li+li+li+li+li+li {float:none; clear:left; width:100%; border:0; padding-top:1px; background-color:transparent}
ul li {float:left; width:2em; margin-right:-1px; border:0.05em solid #00f; padding:0.25em 0; background-color:#ffc}
ul li:first-child+li,
ul li:first-child+li+li+li,
ul li:first-child+li+li+li+li+li {background-color:#fff}
div>ol>li+li+li+li+li+li+li+li+li+li+li+li+li+li {float:none; clear:left; overflow:hidden; width:100%; border:0; padding-top:1px; background-color:transparent}
ol ol li {float:left; width:2em; margin:1px -1px 0 0; border:0.05em solid #000; padding:0.25em 0; background-color:#ffc}
ol ol li:first-child+li,
ol ol li:first-child+li+li+li,
ol ol li:first-child+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
ol ol li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li {background-color:#fff}
ol ol li:first-child {margin-left:6.2em}
li:hover+li+li+li+li+li+li+li+li ol li:first-child {margin-left:0}
li:hover+li+li+li+li+li+li+li ol li:first-child,
li:hover+li+li+li+li+li+li+li+li+li+li ol li:first-child {margin-left:4.1em}
li:hover+li+li ol li:first-child,
li:hover+li+li+li+li+li ol li:first-child {margin-left:2.05em}
li:hover+li+li+li+li+li+li+li+li+li ol li:first-child {margin-left:8.3em}
li:hover+li+li+li+li+li+li ol li:first-child {margin-left:10.3em}
li:hover+li+li+li ol li:first-child,
li:hover+li+li+li+li+li+li+li+li+li+li+li ol li:first-child,
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol li:first-child {margin-left:12.4em}
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol .m29,
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol .m29+li,
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol .m29+li+li,
li:hover+li+li+li ol .m29+li+li,
li:hover+li+li+li+li+li ol .m29+li+li,
li:hover+li+li+li+li+li+li+li+li ol .m29+li+li,
li:hover+li+li+li+li+li+li+li+li+li+li ol .m29+li+li {display:none}</style>
</head>
<body>
<div>
<ol>
<li><a href="#">Jan</a></li>
<li><a href="#">Feb</a></li>
<li><a href="#">Mar</a></li>
<li><a href="#">Apr</a></li>
<li><a href="#">May</a></li>
<li><a href="#">Jun</a></li>
<li><a href="#">July</a></li>
<li><a href="#">Aug</a></li>
<li><a href="#">Sep</a></li>
<li><a href="#">Oct</a></li>
<li><a href="#">Nov</a></li>
<li><a href="#">Dec</a></li>
<li>
<ul>
<li>Mon</li>
<li>Tue</li>
<li>Wed</li>
<li>Thu</li>
<li>Fri</li>
<li>Sat</li>
<li>Sun</li>
</ul>
</li>
<li>
<ol>
<li>01</li>
<li>02</li>
<li>03</li>
<li>04</li>
<li>05</li>
<li>06</li>
<li>07</li>
<li>08</li>
<li>09</li>
<li>10</li>
<li>11</li>
<li>12</li>
<li>13</li>
<li>14</li>
<li>15</li>
<li>16</li>
<li>17</li>
<li>18</li>
<li>19</li>
<li>20</li>
<li>21</li>
<li>22</li>
<li>23</li>
<li>24</li>
<li>25</li>
<li>26</li>
<li>27</li>
<li>28</li>
<li class="m29">29</li>
<li>30</li>
<li>31</li>
</ol>
</li>
</ol>
</div>
</body>
</html>
CSS3 Opera only
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<style type="text/css">
* {margin:0; padding:0}
body {margin:1em}
a {display:block; padding:0.25em 0; color:inherit; text-decoration:none}
li {list-style-type:none}
div {width:14.7em; height:20em; border:6px inset #900; padding:2px; background-color:#f00}
div>ol>li {float:left; width:3.5em; border:0.05em solid #000; background-color:#ff0; text-align:center}
div>ol>li:first-child {background-color:#090; color:#fff}
div>ol:hover>li:first-child {background-color:#ff0; color:#000}
div>ol>li a:hover {background-color:#f90; color:#000}
div>ol>li:nth-child(13) {float:none; clear:left; width:100%; border:0; padding-top:1px; background-color:transparent}
ul li {float:left; width:2em; margin-right:-1px; border:0.05em solid #00f; padding:0.25em 0; background-color:#ffc}
ul li:nth-child(even) {background-color:#fff}
div>ol>li:nth-child(14) {float:none; clear:left; overflow:hidden; width:100%; border:0; padding-top:1px; background-color:transparent}
ol ol li {float:left; width:2em; margin:1px -1px 0 0; border:0.05em solid #000; padding:0.25em 0; background-color:#ffc}
ol ol li:nth-child(even) {background-color:#fff}
ol ol li:first-child {margin-left:6.2em}
li:nth-child(6):hover~li ol li:first-child {margin-left:0}
li:nth-child(4):hover~li ol li:first-child, li:nth-child(7):hover~li ol li:first-child {margin-left:4.1em}
li:nth-child(9):hover~li ol li:first-child, li:nth-child(12):hover~li ol li:first-child {margin-left:2.05em}
li:nth-child(5):hover~li ol li:first-child {margin-left:8.3em}
li:nth-child(8):hover~li ol li:first-child {margin-left:10.3em}
li:nth-child(2):hover~li ol li:first-child, li:nth-child(3):hover~li ol li:first-child, li:nth-child(11):hover~li ol li:first-child {margin-left:12.4em}
li:nth-child(2):hover~li ol li:nth-last-child(-n+3),
li:nth-child(4):hover~li ol li:last-child,
li:nth-child(6):hover~li ol li:last-child,
li:nth-child(9):hover~li ol li:last-child,
li:nth-child(11):hover~li ol li:last-child {display:none}
</style>
</head>
<body>
<div>
<ol>
<li><a href="#">Jan</a></li>
<li><a href="#">Feb</a></li>
<li><a href="#">Mar</a></li>
<li><a href="#">Apr</a></li>
<li><a href="#">May</a></li>
<li><a href="#">Jun</a></li>
<li><a href="#">July</a></li>
<li><a href="#">Aug</a></li>
<li><a href="#">Sep</a></li>
<li><a href="#">Oct</a></li>
<li><a href="#">Nov</a></li>
<li><a href="#">Dec</a></li>
<li>
<ul>
<li>Mon</li>
<li>Tue</li>
<li>Wed</li>
<li>Thu</li>
<li>Fri</li>
<li>Sat</li>
<li>Sun</li>
</ul>
</li>
<li>
<ol>
<li>01</li>
<li>02</li>
<li>03</li>
<li>04</li>
<li>05</li>
<li>06</li>
<li>07</li>
<li>08</li>
<li>09</li>
<li>10</li>
<li>11</li>
<li>12</li>
<li>13</li>
<li>14</li>
<li>15</li>
<li>16</li>
<li>17</li>
<li>18</li>
<li>19</li>
<li>20</li>
<li>21</li>
<li>22</li>
<li>23</li>
<li>24</li>
<li>25</li>
<li>26</li>
<li>27</li>
<li>28</li>
<li class="m29">29</li>
<li>30</li>
<li>31</li>
</ol>
</li>
</ol>
</div>
</body>
</html>
Centauri:
IE7, OPera and FF3:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
font-size: 16px;
}
div {
background-color: #FF0000;
padding: 1px;
border: 5px solid;
border-color: #A90000 #FF8E8E #FF8E8E #A90000;
margin: 10px auto;
width: 246px;
overflow: hidden;
}
ul, ol {
float: left;
padding-left: 1px;
width: 245px;
overflow: hidden;
}
li ol, li ul {
margin-left: -1px;
}
li ol {
margin-top: 1px;
}
li {
height: 24px;
line-height: 24px;
list-style: none;
float: left;
border: 1px solid black;
}
a {
float: left;
height: 24px;
width: 59px;
background-color: #FFFF00;
color: #000000;
text-decoration: none;
text-align: center;
}
li:first-child a {
background-color: #008000;
color: #FFFFFF;
}
ol:hover li:first-child a {
background-color: #FFFF00;
color: #000000;
}
ol:hover li a:hover {
background-color: #FFA500;
}
li li {
width: 34px;
text-align: center;
background-color: #FFFFCC;
margin: 1px 0 0 -1px;
}
li:first-child+li,li:first-child+li+li+li, li:first-child+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li, li:first-child+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li, li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li,
li:first-child+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li+li {
background-color: #FFFFFF;
}
li ul li {
border-color: #0000FF;
}
div>ol>li+li+li+li+li+li+li+li+li+li+li+li+li {
height: auto;
background-color: #FF0000 !important;
border: 0;
width: 245px;
}
li ol li:first-child {
margin-left: 104px;
}
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol li:first-child,
li:hover+li+li+li+li+li+li+li+li+li+li+li ol li:first-child,
li:hover+li+li+li ol li:first-child {
margin-left: 209px;
}
li:hover+li+li+li+li+li+li ol li:first-child {
margin-left: 174px;
}
li:hover+li+li+li+li+li+li+li+li+li ol li:first-child {
margin-left: 139px;
}
li:hover+li+li+li+li+li+li+li+li+li+li ol li:first-child,
li:hover+li+li+li+li+li+li+li ol li:first-child {
margin-left: 69px;
}
li:hover+li+li+li+li+li ol li:first-child,
li:hover+li+li ol li:first-child {
margin-left: 34px;
}
li:hover+li+li+li+li+li+li+li+li ol li:first-child {
margin-left: -1px;
}
li:hover+li+li+li ol li.m29+li+li,
li:hover+li+li+li+li+li ol li.m29+li+li,
li:hover+li+li+li+li+li+li+li+li ol li.m29+li+li,
li:hover+li+li+li+li+li+li+li+li+li+li ol li.m29+li+li {
display: none;
}
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol li.m29,
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol li.m29+li,
li:hover+li+li+li+li+li+li+li+li+li+li+li+li ol li.m29+li+li {
display: none;
}
li:hover ol {
}
</style>
</head>
<body>
<div>
<ol>
<li><a href="#">Jan</a></li>
<li><a href="#">Feb</a></li>
<li><a href="#">Mar</a></li>
<li><a href="#">Apr</a></li>
<li><a href="#">May</a></li>
<li><a href="#">Jun</a></li>
<li><a href="#">July</a></li>
<li><a href="#">Aug</a></li>
<li><a href="#">Sep</a></li>
<li><a href="#">Oct</a></li>
<li><a href="#">Nov</a></li>
<li><a href="#">Dec</a></li>
<li>
<ul>
<li>Mon</li>
<li>Tue</li>
<li>Wed</li>
<li>Thu</li>
<li>Fri</li>
<li>Sat</li>
<li>Sun</li>
</ul>
</li>
<li>
<ol>
<li>01</li>
<li>02</li>
<li>03</li>
<li>04</li>
<li>05</li>
<li>06</li>
<li>07</li>
<li>08</li>
<li>09</li>
<li>10</li>
<li>11</li>
<li>12</li>
<li>13</li>
<li>14</li>
<li>15</li>
<li>16</li>
<li>17</li>
<li>18</li>
<li>19</li>
<li>20</li>
<li>21</li>
<li>22</li>
<li>23</li>
<li>24</li>
<li>25</li>
<li>26</li>
<li>27</li>
<li>28</li>
<li class="m29">29</li>
<li>30</li>
<li>31</li>
</ol>
</li>
</ol>
</div>
</body>
</html>
Bookmarks