html - flex 盒元素的高度相等

标签 html css

我不能使 flexbox 元素高度相同,而其中一个元素有更多内容。因此右边的边框与其他边框不等高。

我想在所有元素中实现相等的边框(如下图中的红线)。

我该怎么做?

enter image description here

.contacts-list {
  color: #333;
  display: flex;
  list-style-type: none;
  justify-content: space-between;
  align-content: center;
  align-items: center; 
  padding: 0 20px;
  font-size: 15px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}

.contacts-list li {
  flex: 1;
  margin: 20px;
  padding: 10px 20px;
  border-right: 1px solid #333;
  align-items: center;
}

.contacts-list__contact {
  text-transform: uppercase;
  font-size: 17px;
}

.contacts-list__address span {
display: flex;
}
<div class="contacts">
    <ul class="contacts-list">
      <li class="contacts-list__contact">Contact</li>
      <li class="contacts-list__address">
        <span>Company Name</span>
        <span>Address</span>
        <span>City</span>
     </li>
      <li class="contacts-list__phone">+ 1 123 456 78</li>
      <li class="contacts-list__email">some@funnyemail.com</li>
    </ul>
  </div>

最佳答案

首先,您必须从 li 中移除边距,这会在顶部和底部创建空间。其次,如果你想对齐中心元素,那么你必须将 display:flexli。希望对你有帮助

.contacts-list {
  color: #333;
  display: flex;
  list-style-type: none;
  justify-content: space-between;
  padding: 0 20px;
  font-size: 15px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}

.contacts-list li {
  flex: 1;
  display:flex;
  flex-wrap: wrap;
  padding: 10px 20px;
  border-right: 1px solid #333;
  align-items: center;

}

.contacts-list__contact {
  text-transform: uppercase;
  font-size: 17px;
}

.contacts-list__address span {
display: flex;
}
<div class="contacts">
    <ul class="contacts-list">
      <li class="contacts-list__contact">Contact</li>
      <li class="contacts-list__address">
        <span>Company Name</span>
        <span>Address</span>
        <span>City</span>
     </li>
      <li class="contacts-list__phone">+ 1 123 456 78</li>
      <li class="contacts-list__email">some@funnyemail.com</li>
    </ul>
  </div>

关于html - flex 盒元素的高度相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49706634/

相关文章:

javascript - 从 Javascript Image() 元素构造函数获取图像属性

html - 使用 CSS 进行横向打印

html - 在 HTML 电子邮件的表格中定位文本

html - 使网页上的每个字符都具有相同的宽度

jquery - 如何在使用 css 悬停后隐藏文本?

javascript - Wordpress 自定义模板中的 featherlight.js

html - Chrome 上右浮动的奇怪行为

css - 为什么CSS Sprite图像应该为负值

jquery - 使用 jquery 动画时 IE 中的样式问题

html - 在 Angular/Bootstrap 中使用编辑按钮输入