CSS меню выравнивается по левому краю в IE7 - как центрировать меню во всех браузерах (IE7, IE8, Firefox, ECT) - PullRequest
3 голосов
/ 22 мая 2011

У меня проблемы с этим меню: http://www.krillhome.com/home1.html

Проблема в том, что в IE 7 меню css выравнивается по левому краю, где мне нужно, чтобы оно было отцентрировано.Когда я добавляю align="center" к div, это исправляет проблему в IE7, однако затем в любом другом браузере это сдвигает все меню вправо примерно на 20 пикселей.

Я думал, что мои поля были выключены, ноони выглядят хорошо.Я надеялся, что смогу добавить <!--[if lt IE 7 ]> <div class="nav-wrap" align="center"> <![endif]-->, но это тоже не сработает.

Вот как это выглядит в IE7: http://www.krillhome.com/incorrect.png (обратите внимание, что меню выровнено по левому краю)

Ответы [ 2 ]

1 голос
/ 22 мая 2011

Я заметил, что ваше меню на самом деле не центрировано, оно просто имеет отступ слева (скорее всего, унаследовано от стилей браузера по умолчанию). У ul не было удалено отступов. Попробуйте добавить эти стили:

.nav-wrap { text-align:center }
.nav-wrap ul { padding:0 }

Попробуйте и посмотрите, будет ли оно в центре вашего меню. Это работает в Firefox для меня. Вместо этого вы можете использовать display:block;margin:0 auto;width:***px.

Несколько комментариев:

Поскольку у вас уже есть условные IE, добавляющие классы в тег <html> для разных версий IE, вы можете настроить таргетинг на эти браузеры следующим образом:

html.ie7 {/* some rule for IE7 */}

Я вижу, что у вас есть доктайп HTML5, но у вас есть много атрибутов HTML "старой школы" (или устарело). align недействителен и не был в течение некоторого времени. Я настоятельно рекомендую полностью удалить их и придерживаться только CSS.

Там также есть некоторые ошибки разбора javascript. Вы должны быть поглощены Firebug . Также взгляните на CSS reset .

0 голосов
/ 22 мая 2011

Применение text-align:center к UL выровняет его по центру в IE7.Кажется, она не влияет на эту маленькую зеленую полосу (которая остается выровненной по левому краю), но сами элементы списка центрированы.

РЕДАКТИРОВАТЬ: вы можете использовать условные комментарии, чтобы применить этот CSS только в Internet Explorer 7:

<!--[if lte IE 7]> <link rel="stylesheet" href="..." type="text/css"> <![endif]-->
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...