zoukankan      html  css  js  c++  java
  • 关于自适应屏幕,设置子元素浮动,父div不能包裹子div,子元素中内容溢出的问题。

    设置HTML适应不同分辨率的屏幕。

    需求结构如下:


    HTML结构代码如下(只是其中一条):

    <body>
    <div class="content"><!--用于包裹一条内容-->
            <div class="img"><img src="../img/03.png"></div><!--放置内容图片-->
            <div class="text"><!--放置内容文字-->
                <div class="title">聊聊天</div>
                <div class="detail">龙儿可以陪你聊天,但更希望你能找到好友去喝杯咖啡,聊聊生活在这个城市的喜怒哀乐!</div>
            </div>
        </div><span style="font-family: Arial, Helvetica, sans-serif;"></div></span><span style="font-family: Arial, Helvetica, sans-serif;"></body></span>
    /* css 样式之一*/
    <pre name="code" class="css">@media screen and (min-1080px){
                .box{  1080px;}.content{ 1040px;min-height: 190px;}
                                     .img{height:180px;}
                                     .text{min-height: 180px;}
                                     .img{font-size: 48px;line-height: 180px;}
                .title{font-size: 46px;line-height: 100px;}
                 .detail{font-size: 20px;}
            }

    
    
    
    我对class=content里面的子元素进行了float,所以两个div在一行,其它样式代码不再贴出,查看页面,效果却不是我想要的,如下:
    

    第一个content的内容,覆盖到了第二个content上。原因是我设置了父元素class=text,的高度,在class=detail的div中写入内容超过了复原的高度,所以溢出了,想要父元素自适应包含元素高度,只需要取消父元素text的高度。如下:

    <pre name="code" class="css">@media screen and (min-1080px){
                .box{  1080px;}.content{ 1040px;}
                                     .img{height:180px;}
                                     .img{font-size: 48px;line-height: 180px;}
                .title{font-size: 46px;line-height: 100px;}
                 .detail{font-size: 20px;}
            }


    取消了两层content和text两层父元素的高度,内容是包裹了,但是样式飞了。如下:
    

    因为我取消了content元素的高度,因为里面的子元素img和text是浮动的,浮动元素脱离了文档流,所以包围图片和文本的div不占据空间。content没有高度包裹不了浮动的子元素,所以所有的子元素,浮动到了一起。如下图:

    图片来自:http://www.jbxue.com/css/31451.html

    上图中,第二容器,在容器中添加了一行,如下,我在结构代码中,添加了一行:

    <span style="font-size:12px;"><div class="content"><!--用于包裹一条内容-->
            <div class="img"><img src="../img/03.png"></div><!--放置内容图片-->
            <div class="text"><!--放置内容文字-->
                <div class="title">聊聊天</div>
                <div class="detail">龙儿可以陪你聊天,但更希望你能找到好友去喝杯咖啡,聊聊生活在这个城市的喜怒哀乐!</div>
            </div>
            <span style="background-color: rgb(255, 0, 0);"><div class="clear" style="clear:poth;"></div><!-- 加入不浮动元素 --></span>
        </div></span>
    在每个content结束之后,清除content这个元素中子元素的浮动,清除之后。因为div.clear是区块且没有浮动,会一直在父元素中,所以会撑起父元素,效果如下:




    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    【转】Selenium模拟JQuery滑动解锁
    【转】nose-parameterized是Python单元测试框架实现参数化的扩展
    【转】Chrome headless 模式
    RobotFramework:App九宫格滑动解锁
    appium九宫格解锁错误提示:The coordinates provided to an interactions operation are invalid解决办法
    RobotFramework:App滑动屏幕
    robotframework:appium切换webview后,在webview里滑动屏幕
    robotframework:appium切换webview后,在第一个页面操作成功,跳转到第二个页面后,执行命令失败
    robotframework之APP混合H5自动化测试
    Allure生成测试报告
  • 原文地址:https://www.cnblogs.com/v-weiwang/p/4773769.html
Copyright © 2011-2022 走看看