zoukankan      html  css  js  c++  java
  • css3中的display:-webkit-box的用法

    一、 css

    weui-media-box__desc {
        color: #999999;
        font-size: 13px;
        line-height: 1.2;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }
    

     二、显示效果

     

    三、关键部分:

    display: -webkit-box;
    -webkit-line-clamp: 2;

    四、扩展:display:-webkit-box的用法

    1.之前要实现横列的web布局,通常就是float或者display:inline-block; 但是都不能做到真正的流体布局。至少width要自己去算百分比。
    2.flexible box 就可以实现真正意义上的流体布局。只要给出相应属性,浏览器会帮我们做额外的计算。

    提供的关于盒模型的几个属性:

    box-orient           子元素排列 vertical or horizontal
    box-flex             兄弟元素之间比例,仅作一个系数
    box-align            box 排列
    box-direction        box 方向
    box-flex-group       以组为单位的流体系数
    box-lines
    box-ordinal-group    以组为单位的子元素排列方向
    box-pack以下是关于flexible box的几个实例
    1、三列自适应布局,且有固定margin:

    <!DOCTYPE html><html><style>
    .wrap {
    display: -webkit-box;
    -webkit-box-orient: horizontal;
    }
    .child {
    min-height: 200px;
    border: 2px solid #666;
    -webkit-box-flex: 1;
    margin: 10px;
    font-size: 100px;
    font-weight: bold;
    font-family: Georgia;
    -webkit-box-align: center;
    }
    </style><div><div>1</div><div>2</div><div>3</div></div></html>

    2、当一列定宽,其余两列分配不同比例亦可(三列布局,一列定宽,其余两列按1:2的比例自适应):

    <!DOCTYPE html><html><meta charset=”utf-8″ /><style>
    .wrap {
    display: -webkit-box;
    -webkit-box-orient: horizontal;
    }
    .child {
    min-height: 200px;
    border: 2px solid #666;
    margin: 10px;
    font-size: 40px;
    font-weight: bold;
    font-family: Georgia;
    -webkit-box-align: center;
    }
    .w200 { 200px}
    .flex1 {-webkit-box-flex: 1}
    .flex2 {-webkit-box-flex: 2}
    </style><div><div>200px</div><div>比例1</div><div>比例2</div></div></html>
    3、下面是一个常见的web page 的基本布局:

    <!DOCTYPE html><html><meta charset=”utf-8″ /><style>
    header, footer, section {
    border: 10px solid #333;
    font-family: Georgia;
    font-size: 40px;
    text-align: center;
    margin: 10px;
    }
    #doc {
    80%;
    min- 600px;
    height: 100%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin: 0 auto;
    }
    header,
    footer {
    min-height: 100px;
    -webkit-box-flex: 1;
    }
    #content {
    min-height: 400px;
    display: -webkit-box;
    -webkit-box-orient: horizontal;
    }

    .w200 { 200px}
    .flex1 {-webkit-box-flex: 1}
    .flex2 {-webkit-box-flex: 2}
    .flex3 {-webkit-box-flex: 3}
    </style><div id=”doc”><header>Header</header><div id=”content”><section>定宽200</section><section>比例3</section><section>比例1</section></div><footer>Footer</footer></div></html>

    3.了解更多

    链接:http://blog.csdn.net/csdn_chenli/article/details/52946143

    五、扩展:-webkit-line-clamp的用法

    引用:http://www.css88.com/webkit/-webkit-line-clamp/

    -webkit-line-clamp 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。
    
    限制在一个块元素显示的文本的行数。 为了实现该效果,它需要组合其他外来的WebKit属性。常见结合属性:
    
    display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。
    -webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。
    text-overflow,可以用来多行文本的情况下,用省略号“...”隐藏超出范围的文本 。
    

      

  • 相关阅读:
    vue嵌套路由
    不同的网络出现的报错
    yarn 创建react项目时出现错误
    vue-awsome-swiper竖向滚动出现空白
    SpringBoot路径映射
    ApplicationRunner接口
    CommandLineRunner接口
    springboot创建拦截器
    Cors跨域请求
    springboot自定义异常视图
  • 原文地址:https://www.cnblogs.com/rong88/p/7269241.html
Copyright © 2011-2022 走看看