zoukankan      html  css  js  c++  java
  • 如何创建width与height比例固定的元素

    面试题,刚在github上看到的,说说这里面的知识点吧~~

    padding-bottom的值,其百分比是根据元素自身的width来算的。

    padding,在标准盒模型中,width+padding+border=内盒

    到这里,其实已经做到了宽高自适应且固定比例,题目算是解答完成了。不过,我们可以扩展下这个问题:

    好了,新的问题来了,wrap的position为relative,而高度又无法指定,怎么让子元素的高度占满父元素呢?我们知道直接为box指定height:100%是没有效果的。

    这时就又用到了神奇的position:absolute;结合left:0;top:0;right:0bottom:0;可以使box完全填充满父元素wrap,当然你不能额外的为box指定width与height,那样会功归一篑。

        <style>
            .wrap{width: 100%;
                position: relative;
                padding-bottom: 20%;
            }
            .wrap .box{
                position: absolute;
                left: 0;
                top:0;
                right: 0;
                bottom: 0;
                background-color: #edd;
            }
        </style>
    <div class="wrap">
        <div class="box">
            高宽5:1
        </div>
    </div>

     还可以继续给box加padding,border,margin什么的,都ok的哟~~

            .wrap .box{
                position: absolute;
                left: 0;
                top:0;
                right: 0;
                bottom: 0;
                padding: 10px;
                margin: 15px;
                background-color: #edd;
                border: 5px solid #fff;
            }

  • 相关阅读:
    fork安全的gettid高效实现
    TCP_DEFER_ACCEPT的坑
    TCP Linger的坑
    Blade和其他构建工具有什么不同
    在Blade中结合gperftools检查内存泄露
    GraphViz web版
    用户场景分析
    java-二维数组——with 刘童格
    java-四则运算-五-网页版--with刘童格
    java-四则运算-四
  • 原文地址:https://www.cnblogs.com/qianlegeqian/p/4781363.html
Copyright © 2011-2022 走看看