<LI> при <UL>ширина не 100% на IE7 - PullRequest
1 голос
/ 21 декабря 2011

Еще раз у меня проблема с IE. У меня есть выпадающее меню с <LI> пунктами, попадающими под него вертикально, а <UL> выше имеет цвет фона. У <LI> есть цвет фона при наведении, поэтому мне, безусловно, нужно заполнить его на всю ширину, но только в IE он не работает.

Пример, над которым я работаю: здесь . Наведите курсор на пункт меню «РЕСУРСЫ». Это хорошо работает на FF, но не на IE (дух).

#menu {
    margin:0px auto;
    padding:0px;
    width: auto;
    display: block;
    list-style:none;
    white-space: nowrap;
    position: relative;
}

#menu li {
    display:inline;
    margin-left:40px;
    margin-right:0px;
    margin-top:10px;
    margin-bottom:0px;
    padding:0px 0px 0px 0px;
    list-style:none;
    position: relative !important;

}

#menu li a:link, #menu li a:visited {
    color:#fff;
    text-decoration:none;
    font-size:12px;
    padding-bottom: 3px;
    text-transform: uppercase;
}

#menu li a:hover {
    color:#ddd;
}

#menu li a:active {
    position:relative;
    top:1px;
    color:#fff;
}

.submenu {
    position:absolute;
    left: -9999px;
    display: block;
    background-color:#906117;
    padding:0px 0px 0px 0px;
    margin: 0px;
    top:15px;
    z-index: 20;
}

#menu li:hover .submenu {
    left: -5px;
}

.submenu li {
    text-align: left !important;
    margin:0px !important;
    padding: 3px 0px 5px 0px !important;
    float: left;
    display: block;
    width: 100%;
    position:relative;
    border: 1px solid #333;
}

.submenu li:hover {
    background-color: #f79c10;
}

.submenu li a:link, .submenu li a:visited {
    color:#fff !important;
    font-size:12px !important;
    padding: 0px !important;
    margin: 0px !important;
    white-space:nowrap;
    display: block;
    padding:3px 7px 5px 7px !important;
    min-width: auto;
    zoom: normal;

}

.submenu li a:hover, .submenu li a:active {
    color:#fff !important;
}

Ответы [ 3 ]

3 голосов
/ 21 декабря 2011

CSS:

#menu .submenu li {
    display: block;
    width: auto;
    float: none;
}
2 голосов
/ 21 декабря 2011

Используйте float:left для вашего LI и переместите все остальные стили в ваш A тег. Добавьте display:block к вашему тегу A.

Не забудьте очистить свои поплавки после вашего меню.

0 голосов
/ 21 декабря 2011

Встроенный дисплей обычно не расширяется до полной ширины. Попробуйте установить его на

display:inline-block
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...