css继承:CSS继承性之深入剖析(2)



  
  在CSS中继承是种非常自然行为我们甚至不需要考虑是否能够这样去做但是继承也有其局限性

  首先有些属性是不能继承这没有任何原因只是它就是这么设置标准就是如此举个例子来说:border属性大家都明白border属性作用是设置元素边框它就没有继承性如果继承了边框属性那么文档看起来就会很奇怪例如我们定义容器div边框为1px而在此容器内ul li在正常情况下我们都不希望它有边框如果border有继承性我们就要再去掉它们边框这样显然是不合理

  多数边框类属性如:Border(边框)、Padding(补白)、Margin(边界)、背景等等都是没有继承性

  在某些时候继承也会带来比如说下面这条CSS定义:

  Body{color:blue}

  这是定义了Body中文本颜色为蓝色如果Body中含有表格在有些浏览器中这句定义会使除表格的外文本变成蓝色而表格内部文本颜色并不是蓝色从技术上来说这是不正确但是它确实存在所以我们经常需要借助于某些窍门技巧比如将CSS定义成这样:

  Body,table,th,td{color:blue}

  这样表格内文字也会变成蓝色了
  
Tags:  css的兼容性 css兼容性 css不继承 css继承

延伸阅读

最新评论

发表评论