Другое решение (которое должно работать независимо от типа документа);
#topnavcontainer li {
display:inline-block;
zoom: 1;
*display: inline;
}
Краткое объяснение состоит в том, что inline-block
позволяет стилизовать элементы списка, как если бы они были элементами блочного уровня (т.е. датьих ширина, высота и т. д.), при этом выкладывая их в линию.Преимущество перед float: left
заключается в том, что вы можете применить выравнивание текста к #topnavcontainer
, чтобы выровнять вашу навигацию влево / по центру / справа.Вы также можете установить вертикальное выравнивание, хотя иногда это кажется немного привередливым.
Две другие строки, zoom
и *display
, - это хитрость, чтобы заставить это работать в более старых версиях IE.Это длинное объяснение, но если вы хотите узнать больше об этом, поищите в Google слова «hasLayout» и «css star hack».