2013-04-05 2 views
2

У меня есть два divs, оба позиционируются абсолютным, один внутри другого, служащим меню. Во внутреннем я имею некоторые элементы кнопки, которые должны расширять родительский div. Прекрасно в теории, Chrome и IE. Но я не могу заставить его работать в Firefox. Кнопки не расширяют родительский div.Firefox не расширяет абсолютный позиционированный div, содержащий кнопки

Как-то работает, если после кнопок добавить дополнительный элемент тега.

Css

/* .Menu-Wrapper and .Menu have to have postion: absolute */ 

.Menu-Wrapper { 
    position: absolute; 
    top: 100px; 
    left: 100px; 
} 
.Menu { 
    background: yellow; 
    position: absolute; 
    top: 0; 
    left: 0; 
    padding: 6px; 
} 
.Menu-item { 
    background: red; 
    border: 0; 
    margin: 2px; 
    padding: 0; 
    display: block; 
    white-space: nowrap; 
    width: 100%; 
    text-align: left; 
} 

HTML

<div class="Menu-Wrapper"> 
     <!-- there would be a trigger button here, left out for simplicity --> 
    <div class="Menu"> 
     <!-- in firefox the follwoing buttons do not expand to width text --> 
     <button class="Menu-item">Menu Point 1 ....</button> 
     <button class="Menu-item">Menu Point 1</button> 
     <button class="Menu-item">Menu Point 1..</button> 
    </div> 
</div> 

См Пример здесь:

http://jsfiddle.net/2Xbpq/ (не работает в Firefox)

Любая идея, как заставить его работать в Firefox?

+0

Я с трудом понять, почему. Меню должно быть абсолютно позиционировано? Из кода я вижу его просто контейнер для .Menu-элементов. – Lowkase

+0

В «реальном» коде есть встроенный триггерный элемент .Menu-Wrapper, который будет показывать только меню при нажатии. Поэтому меню должно быть абсолютным. И Menu-Wrapper абсолютно позиционируется, поэтому я могу свободно перемещать его. – Hans

ответ

3

Использование width: -moz-available;

jsFiddle

Это будет исправить это, хотя я не совсем уверен, почему и далее действует странно в этом контексте ..

+0

wow, thx. как вы придумали это, я попробовал некоторые префиксы -moz, но не этот, thx alot, потратил много времени на это. – Hans

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