垂直顶部并排对齐 ul 项目
Vertical-top align ul items side by side
我将我的 UL 项目设置为具有 display: inline-block
、30% 的宽度,并且它们并排正确对齐。
但是,如果有更大的 li,它们会垂直对齐到底部。
有什么方法可以顶部对齐这些项目吗?
我不喜欢的一个解决方案是让所有元素的高度都等于 Javascript,但不认为这是解决此问题的一个干净的解决方案,因为不同的行可能需要不同的高度.
这里是代码片段..
ul {
display: block;
width: 100%;
list-style: none;
padding: 0;
}
ul > li {
display: inline-block;
width: 50%;
}
<ul>
<li>
<h1>Item A with Long text</h1>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quibusdam quisquam debitis officia impedit sed omnis dolorem nihil doloribus dolore provident totam unde minus possimus quae dignissimos quo necessitatibus ipsa molestias.
</li>
<li>
<h1>Item B with Short Text</h1>
</li>
<li>
<h1>Item C with Short Text</h1>
</li>
<li>
<h1>Item D with Short Text</h1>
</li>
</ul>
这也与著名的 white space 错误有关。
请参阅此演示,其中使用字体大小 https://jsfiddle.net/8hfgmwLy/2/
进行了修复
HTML
<ul>
<li>
<h1>Item A with Long text</h1>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quibusdam quisquam debitis officia impedit sed omnis dolorem nihil doloribus dolore provident totam unde minus possimus quae dignissimos quo necessitatibus ipsa molestias.
</li>
<li>
<h1>Item B with Short Text</h1>
</li>
<li>
<h1>Item C with Short Text</h1>
</li>
<li>
<h1>Item D with Short Text</h1>
</li>
</ul>
CSS
ul {
display: block;
width: 100%;
list-style: none;
padding: 0;
margin: 0;
font-size: 0;
}
ul > li {
display: inline-block;
width: 25%;
background: grey;
vertical-align: top;
font-size: 14px;
}
我将我的 UL 项目设置为具有 display: inline-block
、30% 的宽度,并且它们并排正确对齐。
但是,如果有更大的 li,它们会垂直对齐到底部。
有什么方法可以顶部对齐这些项目吗?
我不喜欢的一个解决方案是让所有元素的高度都等于 Javascript,但不认为这是解决此问题的一个干净的解决方案,因为不同的行可能需要不同的高度.
这里是代码片段..
ul {
display: block;
width: 100%;
list-style: none;
padding: 0;
}
ul > li {
display: inline-block;
width: 50%;
}
<ul>
<li>
<h1>Item A with Long text</h1>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quibusdam quisquam debitis officia impedit sed omnis dolorem nihil doloribus dolore provident totam unde minus possimus quae dignissimos quo necessitatibus ipsa molestias.
</li>
<li>
<h1>Item B with Short Text</h1>
</li>
<li>
<h1>Item C with Short Text</h1>
</li>
<li>
<h1>Item D with Short Text</h1>
</li>
</ul>
这也与著名的 white space 错误有关。
请参阅此演示,其中使用字体大小 https://jsfiddle.net/8hfgmwLy/2/
进行了修复HTML
<ul>
<li>
<h1>Item A with Long text</h1>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quibusdam quisquam debitis officia impedit sed omnis dolorem nihil doloribus dolore provident totam unde minus possimus quae dignissimos quo necessitatibus ipsa molestias.
</li>
<li>
<h1>Item B with Short Text</h1>
</li>
<li>
<h1>Item C with Short Text</h1>
</li>
<li>
<h1>Item D with Short Text</h1>
</li>
</ul>
CSS
ul {
display: block;
width: 100%;
list-style: none;
padding: 0;
margin: 0;
font-size: 0;
}
ul > li {
display: inline-block;
width: 25%;
background: grey;
vertical-align: top;
font-size: 14px;
}