2013-04-15 4 views
1

Я хочу создать меню с элементами li, которые имеют фон, поэтому я хотел установить height и width, но я не могу этого сделать. Я пробовал position: absolute;, но когда я это делаю, элементы списка идут друг на друга.Установить высоту li без "position: absolute"

Есть ли способ изменить высоту/ширину без position: absolute;?

Я раньше не сталкивался с этой проблемой, и я не могу понять, что это такое, надеюсь, вы сможете помочь. Спасибо заранее.

+0

дисплей: блок; плыть налево; попробуйте :) –

ответ

3

Вы можете попробовать настроить line-height или использовать display: block совмещены с width и height:

<ul class="one"> 
    <li>One</li> 
    <li>Two</li> 
</ul> 

<ul class="two"> 
    <li>One</li> 
    <li>Two</li> 
</ul> 

.one li { 
    line-height: 2em; 
    background-color: green; 
} 

.two li { 
    display: block; 
    background-color: pink; 
    width: 50px; 
    height: 50px; 
} 

http://jsfiddle.net/PJvq4/

+0

Спасибо, действительно помог мне здесь! – Johan

1

Элемент LI по умолчанию в дисплей: список-элемент, который игнорирует высоту , Высота и ширина - это свойства css, действительные для блоков отображения, а также встроенные или плавающие элементы.

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

надеется, что помогает

+0

спасибо вам, всегда хорошо знать, почему что-то терпит неудачу, а не только, как это будет работать. – Johan

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