zoukankan      html  css  js  c++  java
  • css清除浮动

    css中的float:

    float:left  左浮动

    float:right  右浮动

    float:none 不浮动

    float:inherit 继承浮动(继承父元素浮动属性,如果父元素无浮动属性,inherit失效)

    浮动产生哪些问题:1.父元素塌陷,没有高度。2.网页中的临近元素出现异位

    清除浮动的几种方法:

    1.手动给父元素添加高度  缺点:如果子元素过多且数量不确定,设置较为复杂。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除浮动</title>
        <style type="text/css">
      /*给父级元素添加高度 */
      *{
        padding:0;
        margin:0;
      }
       .news {
       background-color: red;
       border: solid 1px black;
       height:200px;   /*设置高度,如果去掉高度元素塌陷*/      
        } 
    
     .news img {
      float: left;
      }
    
     .news p {
      float: right;
      }
      
        </style>
    </head>
    <body>
      <div class="news">
        <img src="1.jpg" />
        <p>some text</p>
      </div>
    </body>
    </html>

    2.用clear属性

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除浮动</title>
        <style type="text/css">
      /* 清除浮动 clear*/
      *{
        margin:0;
        padding:0;
      }
    .news {
      background-color: red;
      border: solid 1px black;
      }
    
    .news img {
      float: left;
      }
    
    .news p {
      float: right;
      }
    
     .content{
      clear:both;/*两边都清除浮动*/
      } 
        </style>
    </head>
    <body>
     
    <div class="news">
    <img src="1.jpg" />
    <p>some text</p>
    <div class="content"></div>
    </div>
    </body>
    </html>

    3.给父元素添加overflow属性并结合zoom:1使用

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除浮动</title>
        <style type="text/css">
        /* 给父级元素添加overflow:hidden; */
        *{
             margin:0;
             padding: 0;
         }
     .news {
      background-color: red;
      border: solid 1px black;
      overflow: hidden; /*溢出隐藏*/
      zoom:1;/*兼容IE浏览器*/
      }
    
    .news img {
      float: left;
      }
    
    .news p {
      float: right;
      }
        </style>
    </head>
    <body>
        <div class="news">
        <img src="1.jpg" />
        <p>some text</p>
    </div>
    </body>
    </html>

    4.给父级元素添加浮动  缺点:相邻元素位置异常

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除浮动</title>
        <style type="text/css">
      /* 给父级元素添加浮动 */
      *{
        margin:0;
        padding:0;
      }
     .news {
      background-color: red;
      border: solid 1px black;
      float: left;  /* 给父级元素添加浮动 */
      }
    
    .news img {
      float: left;
      }
    
    .news p {
      float: right;
      }
        </style>
    </head>
    <body>
        <div class="news">
        <img src="1.jpg" />
        <p>some text</p>
    </div>
    </body>
    </html>

    5.使用:after伪元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除浮动</title>
        <style type="text/css">
      /* 使用伪元素:after添加浮动 */
      *{
        margin:0;
        padding:0;
      }
     .news {
      background-color: red;
      border: solid 1px black;
        }
    
    .news img {
      float: left;
      }
    
    .news p {
      float: right;
      }
      .clearfix:after{
        content: "020";/*在父容器的结尾处放一个空白字符*/
        display: block;
        height: 0; /*让这个空白字符不显示出来*/
        clear: both;
      }
      /* 兼容IE6和IE7,触发haslayout */
      .clearfix{
        zoom:1; 
      } 
        </style>
    </head>
    <body>
        <div class="news clearfix">
        <img src="1.jpg" />
        <p>some text</p>
    </div>
    </body>
    </html>
  • 相关阅读:
    半平面交模板
    poj2420(模拟退火大法好)
    hdu4266(三维凸包模板题)
    三维凸包模板
    三维空间直线最近点对hdu4741
    3维计算几何模板
    hdu1174(3维射线与圆是否相交)
    重点记忆
    UNICODE,GBK,UTF-8区别
    AJAX 基础
  • 原文地址:https://www.cnblogs.com/yyfyl/p/7717158.html
Copyright © 2011-2022 走看看