BFC&IFC&IE兼容问题

BFC:(block formatting context) 块级格式上下文,以特殊的规则渲染内部的元素,一片独立的渲染空间.


BFC:

          1.块元素 自上而下排列

          2.块元素的左边距(margin-left) 会贴合容器的内边距,就算出现浮动元素也会如此,除非该块元素也成为BFC

          3.同一个BFC 的 块元素的垂直方向的外边距会叠加

          4.BFC  区域不会和 浮动区域叠加

          5.BFC  内部的浮动元素会参入BFC的高度计算

          6.BFC  内部的元素不会影响外部的元素,外部元素不会影响BFC  区域的元素

产生BFC:

          1.根元素

          2.overflow  不为 visible,

          3.display  为inline-block,

          4.float    不为 none,

          5.position: 为  absolute 或者 fixed

    IFC (inline formating context):内联格式上下文 可以在同一行排列(inline,inline-block,float:left,right), 规定元素在同一行的水平和垂直对齐方式的   


1.同一行排列 元素(inline boxes,没有容器包裹的文本,可以视为是 span ,匿名的inline boxes)在同一行排列 会产生行框(line box),行框内的元素默认按照自左向右的顺序依次排列(浮动元素除外),,行框在垂直方向 有顶部,底部,基线& 中间位置,同一行无法继续排列,会产生下一个行框,同一行的高度默认由最高的元素撑开,可以通过设置行高来改变 行框的高度.

2.水平排列的顺序:(text-align),


IE6 div最小高度19

解:与line-height和font-size 有关,设置为0

IE6中,float:left的第一个margin-left会显示双倍  right同理

解:_dispaly:inline (_下划线表示只被ie6识别)

IE7 以下块元素,不支持给块元素设置display:inline-block

解:*display:line

       *zoom :1              表示本身的大小缩放一倍,触发重新布局

IE7以下:相对定位的元素如果发生内容溢出父元素设置overflow:hidden; 无法阻止

解:父元素设置position:relative;

IE7以下li间隙  li内部有2个以上的浮动元素存在,li之间会有垂直间隙

解:设置垂直对齐vertical-align

IE6不能识别 png-24


CSS-hack 使用样式:hack来达到页面效果的统一

一:条件注释  内部的标签/样式/js等只能对应的ie浏览器识别

       if gt IE 6 大于 ie 6

        if lt IE 8  小于 ie 8

        gte. 大于等于

        lte  小于等于

<!--[if IE 6]>

        <style>

        div {

            background: pink;           ← 代码样式写在style外面

        }

    </style>

    <![endif]-->


样式属性前添加特定的前缀被特定浏览器识别

             _: ie6

            +:ie6,ie7

            *:ie6,ie7

选择器添加前缀

(* || _ || + )div ,span {

                 ...........

                } 

css hack:可以使用其他的一些方法来解决问题的,不用css hack  

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,347评论 1赞 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 29,197评论 1赞 45
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,453评论 0赞 8
  • 概述: CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明: 一、注释: CSS注释以 "/*" 开始,...
    进入web前端阅读 2,225评论 0赞 8
  • 这个世界太快了,认真的人像傻子。为什么从来都是认真的人被嘲笑呢,你装作什么都不在乎的样子才最可怜。尽然觉得不在乎的...
    ff7295735936阅读 248评论 0赞 0

友情链接更多精彩内容