2012-02-22 2 views
0

Пожалуйста, ознакомьтесь скрипкой здесь для примера:UL не центрирование когда внутри сОн поплавок: правый

http://jsfiddle.net/TKJsc/1/

В основном я пытаюсь сделать это так, UL сосредоточена в его родители div.

У каждого li есть width, и если я использую inline, это не будет отображаться с шириной. Если я использую inline-block, тогда IE не отображает его правильно, но FF делает. Как бы это сделать?

ответ

0

IE8 не работает совсем верно с инлайн-блока из-за ошибки с некоторыми собственной концепции под названием hasLayout. Если товар !hasLayout, он считается встроенным.

Чтобы исправить это в IE8, все, что необходимо, это дать ему некоторое свойство, которое вызовет hasLayout == true. Самый простой способ сделать это с снова мс-патентованных zoom:1;

Для получения более подробной информации, проверить это очень в глубине статьи: http://www.satzansatz.de/cssd/onhavinglayout.html

1

Использование display: inline вместо float: left на ваших li элементов, например, так:

http://jsfiddle.net/TKJsc/

+0

когда я делаю, что я потерять все ширины и полей, кажется, как , см. здесь: http://jsfiddle.net/TKJsc/1/ Я сделал 'inline-block', но тогда я не получаю горизонтальную позицию в IE, он думает, что его' block' –

0

Try дисплей: встроенный блок вместо поплавка: левый. Таким образом вы получаете поля и отступы, а также встроенное поведение.

http://jsfiddle.net/juanojeda/asfjK/

+0

является самым близким, который работает, но 'inline-block' не корректно отображается в IE8, как я могу заставить его работать в IE8? –

+0

Можете ли вы указать, что именно не работает в ie8? – JuanOjeda

Смежные вопросы