作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个像这样的无序列表:
<ul style="float:left;">
<li class="book">
<div>title sdfdfdsfdsfds sdfsdfsdf dsfsdfsdf fdgsdfsdf</div>
</li>
<li class="book">
<div>title</div>
</li>
</ul>
li 的高度应部分取决于 li 的内容(div 高度)。但是,如果内部 DIV 的高度变得高于另一个 li 中的另一个 div,则所有 div 都应采用与较大 div 相同的尺寸。
我试过:
div { height: auto; min-height: 100%; }
并设置 li
float: left;display: inline-block; height: 100px;
但没有任何改变。如果第一个 DIV 的内容导致 div 调整大小,则另一个 DIV 将不会采用新的 100% 高度。我该如何解决这个问题?
最佳答案
在 CSS 中,要根据内容自动将事物调整到相同的高度,它们必须是表格行的一部分。试试这个:
<ul class="booklist">
<li class="book">
<div>title <br>sdfdfdsfdsfds <br>sdfsdfsdf dsfsdfsdf fdgsdfsdf</div>
</li>
<li class="book">
<div>title</div>
</li>
</ul>
.booklist { display: table; float: left; }
.book { display: table-cell; border: 1px solid gray; }
请注意,与一组内联 block 元素不同,表格行不会自动换行到多行,因此如果这是您的目标,您无法使用 CSS 实现,必须添加一些 JavaScript,例如调整高度.
关于html - 如何将 LI 的高度固定为与另一个 LI 一样高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14820945/
我是一名优秀的程序员,十分优秀!