DIV CSS HACK和浏览器兼容解决方法整理收集

2024-01-18 11:12 小编

以下是CSS5搜集整顿的div css hack兼容与兼容代码。

一. 先容

这篇文章包括了8个尤为有用的图谋方法, 在进行css设计碰着问题时你就会用到它们.

二. 针对浏览器的选择器

这些选择器在你须要针对某款涉猎器进行css设计时将非常有用.

IE6及其更低版本


  1. * html {} 

IE7及其更低版本


  1. *:first-child+html {} * html {} 

仅针对IE7


  1. *:first-child+html {} 

IE7和现代浏览器


  1. html>body{} 

仅古代浏览器(IE7不实用)


  1. html>/**/body{} 

Opera9及其更低版本


  1. html:first-child {} 

Safari


  1. html[xmlns*=""] body:last-child {} 

要运用这些选择器,请将它们放在格局畴前. 好比:


  1. #content-box {width:300px;height:150px;} 
  2. * html 
  3. #content-box {width: 250px; }  /* overrides the above style and changes the width to 250px in IE 6 and below */ 

三. 让IE6赞成PNG透明

一个IE6的Bug惹起了毒品烦, 他不赞成通明的PNG图片.(css实现ie6 png图片通明)

你需求使用一个css滤镜


  1. *html #image-style {background-image: none; 
  2. filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="fil 
  3. ename.png", sizingMethod="scale");} 

四. 移除超链接的虚线(仅对FF有用)

FireFox下,当你点击一个超链接时会在核心出现一个虚线外观. 这很容易管理, 只重要在标签技俩中列入 outline:none .


  1. a{outline: none;} 

五. 给行内元素定义宽度

假如你给一个行内元素定义宽度,那末它只是在IE6下有效. 一切的HTML元素要么是行内元素要么就好是块元素. 行内元素包括: <span>, <a>, <strong> 和 <em>. 块元素包括<div>, <p>, <h1>, <form>与<li> . 你不克不及定义行内元素的宽度, 为了用意这个问题你可以将行内元素更改成块元素.


  1. span { width: 150px; display: block } 

六. 让静止宽度的页面居中

为了让页面在浏览器居中显示, 需要相对于定位外层div, 而后把margin配置为auto.


  1. #wrapper {margin: auto;position: relative;} 

七. 图片改换技术

用文字总比用图片做标题好一些. 笔墨对屏幕阅读机和SEO凡曲直短长常朋侪的.

HTML:


  1. <h1><span>Main heading one</span></h1> 

CSS:


  1. h1 { bac千克round:url(heading-image.gif) no-repeat; } 
  2. h1 span {position:absolute;text-indent:-5000px;} 

你可以看到咱们对标题问题运用了尺度的<h1>作为标签况且用css来将文本变革为图片. text-indent属性将笔墨推到了涉猎器左边5000px处, 这样关于涉猎者来讲就看不见了.

关掉css,尔后看看头部会是什么模样的.

八. 最小宽度

IE6其它一个裂缝即是它不支持 min-width 属性. min-width又是相称有用的, 特别是对付弹性模板来讲, 它们有一个100%的宽度,min-width 可以陈诉涉猎器甚么时刻就不要再紧缩宽度了.

除IE6之外一切的涉猎器你只紧要一个 min-width: Xpx; 比如:


  1. .container {min-width:300px;} 

为了让他在IE6下任务, 我们需求一些特别的任务. 劈头的时刻我们紧要建立两个div, 一个采集另外一个:


  1. <div class="container"> 
  2.     <div class="holder">Content</div> 
  3. </div> 

尔后你必要定义外层div的min-width属性


  1. .container {min-width:300px;} 

这时该是IE hack大显才智的时辰了. 你须要包含下列的代码:


  1. * html .container {border-right: 300px solid #FFF;} 
  2. * html .holder {display: inline-block;position: relative;margin-right: -300px;} 

随着浏览器窗口大小的外层div宽度消沉,以适应直到它缩小到了边框的宽度,此时它不会进一步萎缩的。持有人DIV跟风,也终止萎缩。外层的div边框宽度成为内div的最小宽度。

九. 潜藏水准滚动条

为了防范出现水平转折条, 在body里参与 overflow-x:hidden .


  1. body { overflow-x: hidden; } 

当你决意运用一个比阅读器窗口大的图片可能flash时, 这个技巧将颇为有用

屏障IE涉猎器(也即是IE下不浮现) *:lang(zh) select {font:12px !important;} /*FF,OP可见,特别默示:由于Opera最近的进级,今朝此句只为FF所识别*/ select:empty {font:12px !important;} /*safari可见*/ 这里select是选择符,根据环境更换。第二句是MAC上safari浏览器独占的。仅IE7与IE5.0可以辨认 *+html select {…} 暗地里临必要只针对IE7与IE5.0做花样的时候就可以采用这个HACK。仅IE7可以识别 *+html select {…!important;} 劈面临须要只针对IE7做格局的时分即可以采取这个HACK。 IE6及IE6以下辨认 * html select {…} 这个处所要特别留心不少博客都写成为了是IE6的HACK真实IE5.x同样可以识别这个HACK。其它涉猎器不辨认。


Tag: 方法
在线咨询 拨打电话

电话

13363039260

微信二维码

微信二维码