Центрирование горизонтальных списков (float)

( 0 - user rating )
С переходом на блочную верстку и отказом от верстки таблицами центрирование горизонтальных списков без таблиц стало настоящей проблемой. Конечно, если горизонтальный список сделан с помощью display:inline, то с центрированием проблем нет, а вот, если необходимо сохранить блочность элементов списка, то обычными средствами список не отцентрировать никак, даже margin:0 auto для ul не помагает.

Но решение есть, не очень простое, но есть. Далее представлен листинг стилей для центрирования горизонтального плавающего списка.
.centered_list
{
width:100%;
position:relative;
overflow:hidden;
}

.centered_list div
{
left:50%;
position:relative;
float:left;
}

.centered_list ul
{
left:50%;
position:relative;
float:left;
list-style:none;
}

.centered_list ul li
{
float:left;
width:auto;
}
<ul>
<li>1 элемент</li>
<li>2 элемент</li>
<li>3 элемент</li>
</ul>
  • 1 элемент
  • 2 элемент
  • 3 элемент
Так как способ не очень простой, то он требует некоторого пояснения:

  1. Список нужно заключить в два блока (div).
  2. Для первого блока нужно установить ширину, если ширина не фиксированная, то ставим 100%, а также ставим overflow:hidden, чтоб завершить обтекание элементов списка.
  3. Для второго блока нужно установить отступ слева 50%.
  4. Для списка ul установить отступ слева -50%, чтоб убрать отступ слева заданого ранее.
  5. Для второго и третьего блока небходимо установить обтекание слева.
  6. Для всех трех блоков устанавливается относительное позиционирование.
Этот способ работает во всех браузерах (кроссбраузерный) и, что самое главное, список центрируется и для элементов списка сохраняются все блочные свойства.

Комментарии  

 
0 # Рус 2010-02-18 12:48 Отличная статья! Спасибо! я ранее долго парился над этой проблемой!
Но единственный недочет в коде
.centered_list ul
{
left:50%;

}
Здесь left должен быть -50%
Ответить | Ответить с цитатой | Цитировать
 

Добавить комментарий


Защитный код
Обновить

odnaknopka.ru/kolyan.cz

Переводы


наручные часы. Уборка квартир уборка коттеджей. Уборка дома, уборка квартир и офисов.

Selectutorial

Селекторы в действии

listutorial

Изображения для маркеров списка

css screencast


Вентилятор потолочный МР 1. Промышленная вентиляция.