html - 如何使同级元素具有最大同级元素的宽度?

标签 html css

我在 ul 内有 2-3 个 liul 具有设定的宽度。 li 标签中的文本会有所不同,但我们希望每个标签的最小宽度保持为 100px。对于包含更多文本的 li,我们希望确保其左侧和右侧有 15 个像素的填充。

理想情况下,所有 li 的宽度都相同,即它们都具有最大 li 的宽度。 min-width:100px 确保所有 li 在都低于 100 像素时具有相同的宽度,但如果其中一个高于此宽度,则其他必须缩放直到匹配为止。

我可以仅使用 css/html 实现此目的吗?我相信我可以使用 javascript 轻松解决这个问题,但我想在没有它的情况下解决它。

jsfiddle: https://jsfiddle.net/a8ho4b04/3/

html:

<ul>
  <li class="li-1">--- --------</li>
  <li class="li-2">------- ------ ------</li>
  <li class="li-3">---</li>
</ul>

CSS:

ul {
  display: block;
  width: 450px;
}
li {
  display: inline-block;
  padding: 5px 15px;
  border-radius: 3px;
  box-sizing: border-box;
  border: 1px solid black;
  min-width: 100px;
  text-align: center;
}
.li-1 {
  background-color: green;
}
.li-2 {
  background-color: yellow;
}
.li-3 {
  background-color: cyan;
}

最佳答案

flex 盒

ul {
  width: 450px;
  display: flex;
  list-style: none;
}
li {
  flex: 1;
  border-radius: 3px;
  padding: 5px 15px;
  box-sizing: border-box;
  border: 1px solid black;
  min-width: 100px;
  text-align: center;
}
.li-1 {
  background-color: green;
}
.li-2 {
  background-color: yellow;
}
.li-3 {
  background-color: cyan;
}
<ul>
  <li class="li-1">--- --------</li>
  <li class="li-2">------- ------ ------</li>
  <li class="li-3">---</li>
</ul>

CSS 表格

ul {
  width: 450px;
  display: table;
  table-layout: fixed;
  list-style-type: none;
}
li {
  display: table-cell;
  border-radius: 3px;
  padding: 5px 15px;
  box-sizing: border-box;
  border: 1px solid black;
  min-width: 100px;
  text-align: center;
}
.li-1 {
  background-color: green;
}
.li-2 {
  background-color: yellow;
}
.li-3 {
  background-color: cyan;
}
<ul>
  <li class="li-1">--- --------</li>
  <li class="li-2">------- ------ ------</li>
  <li class="li-3">---</li>
</ul>

关于html - 如何使同级元素具有最大同级元素的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36292178/

相关文章:

html - <html lang ="de-DE">是否等于&lt;meta http-equiv ="language"content ="DE">?

html - 通过点击运行动画的纯CSS方法

jquery - toggleClass 不会删除 'showing' 的类

javascript - 有没有办法延迟 window.onload 事件?

html - 需要帮助将表格置于 div 容器中

html - Fontello 在 iOS 上呈现,但不在 Android 和桌面浏览器上呈现

css - 仅使用 Internet Explorer 时,Div 会滑到另一个 div 上

android - 如何在移动设备上使用 CSS 或 Javascript 平滑地设置高度动画

html - 如何将我的元素放入容器 div 中

javascript - 使用 % 作为网格系统的高度