Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 将类型选择器与id选择器组合的优点是什么?e、 g.分区#某些id_Css_Css Selectors - Fatal编程技术网

Css 将类型选择器与id选择器组合的优点是什么?e、 g.分区#某些id

Css 将类型选择器与id选择器组合的优点是什么?e、 g.分区#某些id,css,css-selectors,Css,Css Selectors,这是非常简单,但我想知道为什么人们写这个 div#some_id 一个网页上只能有一个名为“some_ID”的ID。那为什么要具体点呢?它是为了可读性吗?你说得对,但这意味着一个ID为的div。(更准确地说,ID为some_ID的元素,也是div) 这赋予了更高的特异性值,但你是对的。它通常对ID毫无价值,对类名更有用 例如: div.large { width: 500px; /* 500px is a large div */ } input.large { width: 100px; /

这是非常简单,但我想知道为什么人们写这个

div#some_id

一个网页上只能有一个名为“some_ID”的ID。那为什么要具体点呢?它是为了可读性吗?

你说得对,但这意味着一个ID为
div。(更准确地说,ID为
some_ID
的元素,也是
div

这赋予了更高的特异性值,但你是对的。它通常对ID毫无价值,对类名更有用

例如:

div.large { width: 500px; /* 500px is a large div */ }
input.large { width: 100px; /* 100px is a large input */ }

相同的类名,不同的结果。

你是对的,但这意味着一个ID为
div。(更准确地说,ID为
some_ID
的元素,也是
div

这赋予了更高的特异性值,但你是对的。它通常对ID毫无价值,对类名更有用

例如:

div.large { width: 500px; /* 500px is a large div */ }
input.large { width: 100px; /* 100px is a large input */ }

相同的类名,不同的结果。

可能有两个原因:

  • 这是一个更具选择性的选择
  • 它告诉阅读样式表的人选择器的目标是div元素
  • 相同的id可以应用于使用相同样式表的不同页面上的不同元素类型(这通常会导致更多的混乱,而不是好处,所以我不建议采用这种方法)

    • 有几个可能的原因:

      • 这是一个更具选择性的选择
      • 它告诉阅读样式表的人选择器的目标是div元素
      • 相同的id可以应用于使用相同样式表的不同页面上的不同元素类型(这通常会导致更多的混乱,而不是好处,所以我不建议采用这种方法)

        • 这样做的原因主要是为了样式表的可读性


          由于一个页面上只能有一个id,因此不需要指定它是哪种类型的元素是有意义的。

          这样做的原因主要是为了样式表中的可读性


          由于一个页面上只能有一个id,因此不需要指定它是哪种类型的元素是有意义的。

          这是一种错误的方式,它会使CSS呈现变慢,因为呈现引擎从右到左读取CSS,所以它首先搜索id,而不是该标记。但是由于id是唯一的,您应该只写id。id可能是唯一的,但是上下文(在一个页面上是
          div
          ,在另一个页面上可能是
          ul
          )可能不是。@SVS:从右到左与此无关。@BoltClock但是它会使rendring变慢,因为如果分配了id,就没有使用标记的用处。是的。我说从右到左与此无关。我并没有说这并没有使它变慢。这是一种错误的方式,它使CSS呈现变慢,因为呈现引擎从右到左读取CSS,所以它首先搜索id而不是那个标记。但是由于id是唯一的,您应该只写id。id可能是唯一的,但是上下文(在一个页面上是
          div
          ,在另一个页面上可能是
          ul
          )可能不是。@SVS:从右到左与此无关。@BoltClock但是它会使rendring变慢,因为如果分配了id,就没有使用标记的用处。是的。我说从右到左与此无关。我没有说这不会让它变慢。我喜欢你的答案,但在div和span中添加相同的ID“some\u ID”是无效的。@W3Geek:在不同的页面上,仔细阅读(我差点绊倒自己:)啊,好吧,我觉得这样更有意义。我喜欢你的答案,但添加相同的ID“some\u ID”是无效的到一个div和span.@W3Geek:跨越不同的页面,仔细阅读(我差点绊倒自己:)啊,好吧,我觉得这样更有意义。