美文网首页
浮动以及overflow

浮动以及overflow

作者: 麦壳儿UIandFE2 | 来源:发表于2016-10-13 23:03 被阅读31次

    浮动的初体验

    问题:在页面上有两个盒子,一个盒子靠着屏幕左侧显示另一个盒子靠着屏幕的右侧显示?
    作用:解决一行中显示多个盒子的问题(并且这些盒子的位置可控。)
    浮动的代码:
    float:left;
    float:right;

    浮动的特点

    标准流:就是浏览默认摆放盒子的标准。
    ==浮动的元素会脱离标准流==:
    ==如果一个元素按照正常的标准流来显示,会在html中所属的位置占位,后面的元素会紧跟着它。==但是浮动脱了标准流,将来在看到浮动的元素之后,不能以正常的标准流来进行判断。(在标准流中不占位置了,它是在标准流之上)
    浮动以后的元素会覆盖在标准流的元素之上。
    浮动规则:浮动找浮动,不浮动找不浮动
    浮动找浮动:只有写在同一个结构下面的浮动才会浮动找浮动。

    浮动显示的位置与原本不浮动之前的位置是对应的:
    浮动的重点:==********浮动的元素只会影响下面的元素,不会影响上面的元素********==:
    浮动的元素会改变显示方式:
    不管元素是行内元素还是块级元素将来在显示 的时候都会在同一行中显示。
    浮动以后的元素可以设置宽高。
    ==总结:浮动以后的元素的显示方式与行内块级元素一样。==

    浮动的案例:
    1.0使用浮动完成页面的布局

    2.0制作导航
    注意:以后使用a标签直接来制作导航是有问题的

    1.0导航与导航之间应该是列表的关系,所以如果想要将这个些关系通过html语义化表示出来必须要用到ul标签。

    2.0如果这些a标签你不用其它的标签包裹起来,那么将来浏览器会将这些a标签中的文字当作全部一起显示。SEO在查
    看页面的时候会认为这个页面进行作弊,就是进行了关键字的堆砌。
    必须要用ul中的li标签将a中的内容包裹起来。
    3.0文字环绕图片

    清除浮动

    浮动对页面的影响:

    如果一个父盒子中有一个子盒子,并且父盒子没有设置高,子盒子在父盒子中进行了浮动,那么将来父盒子的高度为0.由于父盒子的高度为0,下面的元素会自动补位,所以这个时候要进行浮动的清除。
    float: left;float: right;
    清除浮动:clear:both;

    使用额外标签法:

    在浮动的盒子之下再放一个标签,在这个标签中使用clear:both,来清除浮动对页面的影响。

    内部标签:在浮动盒子的下边加一个空盒子。

    会将这个浮动盒子的父盒子高度重新撑开

    外部标签:在浮动盒子的父级的下边加一个空盒子。

    会将这个浮动盒子的影响清除,但是不会撑开父盒子。
    注意:一般情况下不会使用这一种方式来清除浮动。因为这种清除浮动的方式会增加页面的标签。

    使用overflow属性来清除浮动:

    先找到浮动盒子的父元素,再在父元素中添加一个属性:overflow:hidden,就是清除这个父元素中的子元素浮动对页面的影响。
    注意:一般情况下也不会使用这种方式,因为overflow:hidden有一个特点,离开了这个元素所在的区域以后会被隐藏(

    使用伪元素来清除浮动:

    .clearfix:after {
    content: "";//添加内容为空
    height: 0;//内容高度为0
    line-height: 0;//内容文本的高度为0
    display: block;//将文本设置为块级元素
    clear: both;//清除浮动
    visibility: hidden;//将元素隐藏
    }
    .clearfix {
    zoom: 1;/为了兼容ie6/
    }

    使用双伪元素清除浮动:

    伪元素:在页面上不存在的元素,但是可以通过css来添加上去。
    种类:
    :after(在。。。之后)
    :before(在。。。之前)
    注意:每个元素都有自己的伪元素。

    overflow:溢出

    取值:
    hidden:会将超出容器的部分隐藏起来
    scroll:给容器加上滚动条(==使用时注意设置内容高度,这样才能滚动起来。)==
    auto:根据具体情况判断容器是否要加上滚动条

    元素的隐藏:

    overflow:hidden//将超出的部分裁剪掉
    ==visibility: hidden==//可以将元素隐藏,但是在页面上还保留着原来的位置。(停薪留职)
    ==display: none==;//可以将元素隐藏,并且在页面不占据位置。
    diplay:none与display:block是一对反义词。

    相关文章

      网友评论

          本文标题:浮动以及overflow

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