2013-03-31 39 views
1

我正在尝试使用Twitter Bootstrap将表中一列的内容与右侧对齐。CSS重要性顺序

问题是,.text-right类不适用于<td>元素。应用text-align:right风格的作品,但我很好奇为什么应用于元素的类比一般元素风格的优先级低。

http://jsfiddle.net/ctANw/6/

回答

2

I'm curious why class applied to element has lower priority then general element style.

因为内嵌样式在CSS最大的特异性(除了使用!important关键字)

想想特异性为四个号码(0,0,0,0)

  • 内联样式是第一优先级
  • ID选择器是第二个数
  • Pse土当归类,属性选择器和类是第三
  • 类型选择是第四(这也包括伪元素)
  • 通用选择*具有为0的特异性,很少会覆盖它。

使用,你应该能够找出如何重写一个特定选择

+0

这个问题不是关于内联样式'text-align:right' vs class'text-right',而是'td'样式和.text-right类。班级不应该比一般的“td”风格更重要吗? –

+0

是的,它应该,但在你的例子好像你比较内嵌样式 – Adrift

+0

我没有什么比较。内联风格只是一个补充。我想知道为什么元素风格会覆盖类风格。 –

1

这只是上线192。表TD制式具有“文本对齐:左;”正在覆盖它。

0

这与Specificity hierarchy一个问题。

每个选择器都在特异性层次结构中占据一席之地。有四种不同的类别定义给定选择器的特异性级别:

  1. 内联样式(在文档中存在样式)。内联样式在您的XHTML文档中使用 。它直接附属于元素 的样式。例如。 <h1 style="color: #fff;">

  2. 标识(ID选择的#)ID是用于页面元素, 如#div的标识符。

  3. 类,属性和伪类(类选择器的#)。此 组包括.classes,[属性]和伪类如 :hover:focus

  4. 元素和伪元素(#元素(类型)选择器)。 包括例如:before:after

+0

我想提''重要'也 – Lemurr

+0

我知道。 :|问题是,该元素(4.)正在覆盖该类。 (3) –