美文网首页
css布局:table,table-cell

css布局:table,table-cell

作者: LYF闲闲闲闲 | 来源:发表于2017-07-31 12:01 被阅读1315次

table:会作为块级表格来显示(类似 <table>)
table-row:浏览器会默认创建一个表格行(类似<tr>)
table-cell:作为一个表格单元格显示(类似 <td> 和 <th>)

使用场景

1. 如何使元素垂直居中(table-cell)
display: table-cell;
vertical-align: middle;  

具体实现

<style>
    .table1{
        display: table-cell;
        vertical-align: middle;
        height: 200px;
        width: 200px;
        background-color: pink;
    }
</style>

<div class="table1">
      <div>aa</div>
      <div>bb</div>
      <div>cc</div>
</div>

结果:


2.实现两列布局

左边宽度固定,右边自适应

<style>
    .main {
        display: table;
        background-color: greenyellow;
    }
    .left {
        background-color: pink;
        float: left;
        width: 200px;
        height:100px;
    }
    .right {
        background-color: blue;
        display: table-cell;
        width: 100%;
        vertical-align: top;
    }
</style>

<div class="main">
    <div class="left">aaa</div>
    <div class="right">bbb</div>
</div>

结果:


3.实现一行平分

<style>
    .main {
        display: table;
        background-color: greenyellow;
        width: 100%;
    }

    .left {
        background-color: pink;
        display: table-cell;
        width:50%;
    }

    .right {
        background-color: blue;
        display: table-cell;
        width:50%;
    }
</style>
<body>
<div class="main">
    <div class="left">aaa</div>
    <div class="right">bbb</div>
</div>
</body>

结果:

4. table 和 inline-block

<style>
    .content {
        display: table;
        /*padding: 10px;*/
        width: 400px;
        height: 200px;
    }
    .left {
        display: table-cell;
        background-color: greenyellow;
    }

    .right {
        display: table-cell;
        background-color: red;
        text-align: right;
    }

    .box{
        background-color: blue;
        width: 50px;
        height: 50px;
        display: inline-block;
    }
</style>
<body>
<div class="content">
    <div class="left">
        <div class="box">A</div>
    </div>
    <div class="right">
        <div class="box">B</div>
    </div>
</div>
</body>

结果:


我们要<div class="box">B</div>"整个可以使用text-align: right属性,也就是整个B框要在红色背景的右边,需要先将他们设置inline-block属性

5.改变li标签

<style>
    .content ul{
        display: table;
    }
    .content ul li{
        display: table-cell;
        line-height: 200px;
        width: 200px;
        background-color:pink;
        border: 1px solid blue;
        text-align: center;
    }
</style>
<body>
<div class="content">
    <ul>
        <li>111</li>
        <li>222</li>
        <li>333</li>
    </ul>
</div>
</body>

结果:

相关文章

  • css布局:table,table-cell

    table:会作为块级表格来显示(类似 )table-row:浏览器会默认创建一个表格行(类似 )table-c...

  • 前端知识总结

    1.css 垂直居中 1.1. table-cell (父级盒子设置display: table-cell;ver...

  • 前端日记

    #水平垂直居中布局: flex弹性布局,table-cell布局(父级table),定位(多种方式); #如何安...

  • CSS--table-cell的特性

    table-cell table-cell 具有“同行等高,同行各列自动调节宽度”的特性。因此可以用于响应式布局 ...

  • 三栏布局——五种解决方案

    面试常见考题:三栏布局 浮动布局 绝对定位 flex布局 table-cell布局 grid布局

  • 垂直居中的方法

    行内元素居中 html css before元素居中 html css table-cell居中 css 垂直居中...

  • 垂直居中:display:table的学习

    实现div中的不定宽高图片垂直居中 1.这里不得不提这个布局神器 display:table-cell css代码...

  • CSS——布局布局神器display:table-cell

    display:table-cell;绝对是一个现代的布局神器。 用float来做布局触发的问题比较多,例如要清除...

  • 2019-08-25

    布局 说法一 浮动布局 绝对定位布局 Flex布局 Table-cell表格布局 网格布局 说法二 静态布局 流式...

  • CSS实现垂直水平居中

    宽度和高度已知 宽度和高度未知 flex布局 平移 定位+transform table-cell 布局

网友评论

      本文标题:css布局:table,table-cell

      本文链接:https://www.haomeiwen.com/subject/wegzkxtx.html