zoukankan      html  css  js  c++  java
  • 兼容问题 css的常见问题

    兼容问题  css的常见问题

    1、IE6.7不兼容H5标签 eg:<header></header>   <section></section>

    解决办法一:创建自定义元素,并把元素display设置为block

    <style>

    header,section{display:block}

    </style>

    <script>

      document.createElement(“header”);

    document.createElement(“section”);

    </script>

    解决办法二:引入成熟的js库<script src=“html5shiv.js”></script>

    2、元素浮动后,能设置宽度的话就给元素设置宽度,如果需要宽度是由内容撑开,就给它里面的块元素加上浮动(需要让谁去浮动,让谁去自适应,就给谁加浮动)

    3、第一块元素浮动,第二块元素加margin值,那么在IE6下会有间隙问题

    解决办法:1、不建议这么做

    2、用浮动解决(给第二块元素也加浮动,并去掉margin值)

    4、IE6下子元素超出父级宽高,会把父级的宽高撑开

    解决办法:1、不要让子元素的宽高超过父级

    5、p包含块元素的嵌套规则

    下列元素是块元素不能再嵌套块元素:p、td、h1~h6

    6、margin兼容性问题:1、margin-top传递   解决办法:触发BFC以及hasLayout  标准浏览器下加给父级加边框   IE6、7加zoom:1

      2、同级元素 上下margin叠加  解决办法:尽量设置同一方向的margin,比如都设置top

    7、display:inline-block 在IE6、7下无效,解决办法:*display:inline ; *zoom:1;      *是hack,针对不同浏览器不同的css样式的过程加css hack

    8、IE6的最小高度是19px     解决办法:overflow:hidden;

    9、IE6的双边距问题:给元素加上浮动后设置margin-left,IE6、7下会产生双倍边距   解决办法:*display:inline;

    10、li里的元素都浮动,在IE6、7下会产生4px间隙的问题   解决办法:针对IE6、7给li添加*vertical-align:top;

    11、两个浮动元素之间有注释或有内联元素,并且和父级宽度相差不超过3像素,会出现多复制一个文字的问题

    解决办法:1、避免两个浮动元素之间出现注释或内联元素

    2、与父级宽度之差超过3像素以上

    12、IE6、7父级元素的overflow:hidden是包不住子集的relative

    解决办法:给父级加上relative

    13、IE6下绝对定位元素父级宽高是奇数,绝对定位元素的right和bottom值会有1px的偏差   解决办法,避免父级宽高是奇数

    14、IE下绝对元素和浮动元素并列,绝对元素消失   解决办法:让两个元素不处于同级

    15、IE6下input的空隙问题   解决办法,给input加float

    16、IE6下输入类型表单控件背景问题

  • 相关阅读:
    组内分享总结
    Java虚拟机内存
    代理 正向代理 反向代理
    Class文件打包成jar并执行
    Oracle 并集交集差集
    Sysstat安装以及简单操作
    树结构列表结构相互转换 js
    nginx配置root和alias的区别
    js call apply 用法
    VS Code配置同步
  • 原文地址:https://www.cnblogs.com/feilu2016/p/6796141.html
Copyright © 2011-2022 走看看