微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css – 如何使100%的高度?

ul {
    display: table-row;
}
    
li {
    width: 100px;
    border: 1px solid black;
    display: table-cell;
}

a {
    display: block;
    background-color: yellow;
    height: 100%;
}
<ul>
    <li>
        <a href="#">Test</a>
    </li>
    <li>
        Test  
        Test
        Test
        Test            
    </li>
</ul>

This answer解释了如何使< li>具有相同的高度,但现在如何使< a>填满其整个高度(不使用固定高度)?

解决方法

您正在处理表,并且当计算表和表格单元格高度时,表高度值将用作最小值.

最简单的修复是为CSS表父区块提供一个高度值.
首先,对于ul,应用display:table而不是table-row,然后指定height:1px,任何非零值都可以工作.记住要清除边距和填充(由于ul认设置).

确保CSS table-cell元素的高度为100%,然后a元素将占用高度(因为它显示为块).

注意:如果您将顶级高度设置为100%,这将在Chrome中运行,但在IE中失败.

ul {
  display: table;
  height: 1px; /* any small value will work */
  margin: 0;
  padding: 0;
}
li {
  width: 100px;
  border: 1px solid black;
  display: table-cell;
  height: 100%;
}
a {
  display: block;
  background-color: yellow;
  height: 100%;
}
<ul>
  <li>
    <a href="#">Test</a>
  </li>
  <li>
    Test Test Test Test
  </li>
</ul>

原文地址:https://www.jb51.cc/css/214267.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。