`
jinhailion
  • 浏览: 46134 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

[转] CSS常见浏览器差异性

 
阅读更多
(1)文字本身的大小不兼容:
  
  同样是font-size:14px;的宋体文字,ie下的实际占高是16px,下面留白3px,而ff实际占高是17px,上留白1px,下留白3px,oprea下更不一样。解决办法:给文字设定line-height,确保所有的文字都有默认的Line-height值。
  
  (2)ff下容器高度限定:
  
  即容器设定了height之后,容器边框的外形就确定了,不会被内容撑大,而ie下是会被内容撑大的,高度限定失效。所以不要轻易地给容器定义heihgt。
  
  (3)横向上的撑破容器问题:
  
   如果float容器未定义宽度,ff下内容会尽可能的撑开容器宽度,ie下则会优先考虑内容折行。所以内容可能撑破的浮动容器需要定义width。
  
  (4)double-margin bug。ie6下给浮动元素定义margin-left或者margin-right时,实际效果是数值的2倍。
  
  解决方案:给浮动容器定义 display:inline.
  
  (5) mirror margin bug,当外层元素内有float元素时,外层元素如果定义margin-top:15px,便会自动的生成margin-bottom:15px,
  
  padding也是如此,都是ie6下的‘杰作’。解决方案:外层元素设定border或者float。
  
  (6)吞吃现象:
  
  还是ie6下面的问题,上下两个div,上面的div设定了背景,却发现下面的div也有了背景。对应上面的背景吞吃现象,还有滚动下边框确实的现象。解决方案:zoom:1。这个zoom好像就是专门为解决ie6的bug而设计的。
  
  (7)img下面的留白:1


  
  
  把div的border打开,你会发现图片底部不是紧贴着容器底部的。这是由于img后面的空白字符造成的。要消除空白必需如下这么写:1


  
  
  后面的两个标签要紧挨着。ie7下面这个问题依然存在,解决方案:给img设定display:block。
  
  (8)失去line-height:
  
  
文字内容
,在ie6下会发现单行文字line-height效果消失了。原因是:这个inline-block元素和inline元素写在一块了。解决方案:让img和文字内容都float起来。
  
  (9)clear层应该单独使用:
  
  例如:
。否则容易是一些内容层的属性失效。
  
  (10)ie下的overflow:hidden对齐其下的绝对层或者相对层无效。解决方案:给overflow:hidden 加 position:relative 或者position:absolute 。另:ie6支持overflow-x和-y,ie7和ff不支持。
  
  (11)ie6,float如果没有定义宽度,内部如果有div定义了height或者zoom:1,这个div就会占满一整行,即使你给了宽度。所以:float元素如果作为布局用或者复杂的容器,都要给个宽度的。
  
  (12)ie6,绝对定位的div下包含相对定位的div,如果给内层相对定位的div的height具体值,内层相对层将具有100%的width值,外层的绝对层将会被撑大。解决方案:给内层相对层float属性。
分享到:
评论

相关推荐

    常见的浏览器兼容性问题(小结)

    (1) 因为历史原因,不同的浏览器样式存在差异,可以通过 Normalize.css 抹平差异,也可以定制自己的 reset.css,例如通过通配符选择器,全局重置样式。 * { margin: 0; padding: 0; } (2)在CSS3还没有成为真正...

    IE与Firefox的CSS兼容大全 推荐

    CSS对浏览器器的兼容性具有很高的价值,通常情况下IE和Firefox存在很大的解析差异,这里介绍一下兼容要点。 常见兼容问题: 1.DOCTYPE 影响 CSS 处理 2.FF: div 设置 margin-left, margin-right 为 auto 时已经居中,...

    normalize.scss:SCSS版本的normalize.css

    我们研究了默认浏览器样式之间的差异,以便仅精确定位需要标准化的样式。它有什么作用? 与许多CSS重置不同,保留有用的默认值。 标准化各种元素的样式。 更正错误和常见的浏览器不一致问题。 通过细微的改进来提高...

    纯CSS实现“文本溢出截断省略”的几种方法

    他们之间的差异性和场景适应性又是如何? 一般来说,在做这样文字截断效果时我们更多是希望: 兼容性好,对各大主流浏览器有好的支持 响应式截断,根据不同宽度做出调整 文本超出范围才显示省略号,否则不显示...

    前端开发常见问题汇总概要总结.docx

    布局与样式兼容性:不同浏览器对CSS标准支持程度各异,导致布局差异,需要处理盒模型、float、positioning、flexbox、grid等方面的兼容问题。 响应式设计:移动设备适配、屏幕分辨率变化下的布局调整和图像自适应等...

    详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用

    要使用标准的CSS3实现某元素的投影效果,有两个套路,第一个就是使用常见的box-shadow, 第二个就是使用CSS3的filter阴影滤镜drop-shadow,那这两个阴影实现有什么具体的差异呢? 一、兼容性不一 CSS3 box-shadow从...

    mcad-sdblog:练习 11.2

    该项目依赖于研究默认浏览器样式之间的差异,以便仅精确定位需要或受益于规范化的样式。安装 : npm install --save normalize.css : component install necolas/normalize.css : bower install --save normalize....

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    媒体查询 CSS媒体查询允许开发者基于浏览网站的设备的特性来应用不同的样式申明,最常用的特性是视口宽度。 GCF 谷歌内嵌浏览器框架, 使用此插件,用户可以通过Internet Explorer的用户界面,以Chrome内核的渲染方式...

    HTML5触摸界面设计与开发

    第5章是关于要摒弃一次性的页面加载方式和重构应用程序以使实际上和感觉到的性能都达到最优的。书的后半部分是专门讲触摸界面的,特别是尽可能地让它们更平稳和快速。  《HTML5触摸界面设计与开发》适合具有一定...

    CodeIgniter:php敏捷开发框架web快速开发详解

    你不需要写很多代码,是因为 CI 提供了许多标准的功能,这些经过仔细推敲的框架内的代码,对安全性和输入进行了有效的校验和考虑。初学者往往没有足够的能力全面兼顾功能和安全。(这也是中高级程序员与新手之间能力...

Global site tag (gtag.js) - Google Analytics