先月からIE6で見た際にサイドバーの表示が崩れていたのですが、原因がやっとわかり修正しました。
Firefox2での表示は
のようにうまくいっていたのですが、IE6にて
のようにくずれておりました。
原因はCSSにて
- li要素の横幅の指定ミス
- IEだと改行無視を指定しないとli要素がうまく改行してくれなかった
でした。
#nav a {
display: block;
font-size: 10px;
font-weight: bold;
color: #999;
text-decoration: none;
margin: 0 4px auto 4px;
padding-left: 5px;
border-bottom: 1px solid #CCC;
/*height: 16px;
縦幅を指定すると改行時にデザインが重なる*/
padding-top: 7px;
}
#nav li {
width: 202px; /* ←横幅を指定する */
}
#nav li.category { /* カテゴリ表示部 */
float: left;
width: auto;
white-space: nowrap; /* ←改行しない */
}
これで現在はIE・Firefoxともにデザインが崩れずに表示されているはずです。
IE・Firefoxでの表示の両立は難しいですね。