常用的CSS BUG解决方法与技巧 收集贴

一、 针对浏览器的选择器

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

 

    IE6及其更低版本                     * html {}

 

      IE7及其更低版本                    *:first-child+html {} * html {}

 

      仅针对IE7                              *:first-child+html {}

 

      IE7和当代浏览器                     html>body{}

 

      仅当代浏览器(IE7不适用)        html>/**/body{}

 

      Opera9及其更低版本              html:first-child {}

 

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

 

      要使用这些选择器,请将它们放在样式之前. 例如:

 

#content-box {  
       width: 300px;  
        height: 150px;  
 }  
   
 * html #content-box {  
         width: 250px;  
 }   

 

      IE8                                          { margin:0 auto\9; }

 

 

二、最小宽度

 

  IE6另外一个bug就是它不支持 min-width 属性. min-width又是相当有用的, 特别是对于弹性模板来说, 它们有一个100%的宽度,min-width 可以告诉浏览器何时就不要再压缩宽度了.

除IE6以外所有的浏览器你只需要一个 min-width: Xpx; 例如:

 

.container {  
   min-width:300px; 
}  
 


.container {
    min-width:300px;
}

 

  为了让他在IE6下工作, 我们需要一些额外的工作. 开始的时候我们需要创建两个div, 一个包含另一个:

 

<div class="container">  
    <div class="holder">Content</div>  
</div>  
 

<div class="container">

       <div class="holder">Content</div>

</div>

 

  然后你需要定义外层div的min-width属性,

 


.container {
       min-width:300px;
}

 

这时该是IE hack大显身手的时候了. 你需要包含如下的代码:

 


* html .container {
      border-right: 300px solid #FFF;
}

* html .holder {
      display: inline-block;
      position: relative;     
      margin-right: -300px;
}

你可能感兴趣的:(html,css,浏览器,IE,Safari)