为什么这些 Youtube 元素(建议列表项)具有相同的 ID
Why do these Youtube elements (suggestion-list-items) have same id
我觉得这很奇怪:
看看上面从 Youtube 截取的屏幕截图。有人可以解释一下多个元素具有相同 ID(dismissable
、dismissed
)的目的是什么?
这些是右侧的建议视频,同时另一个视频正在播放,如下面的屏幕截图所示:
不知道他们为什么要使用 ID。
只要您点击推荐视频中的不感兴趣,他们就会显示这个dismissed div,其中包含一些选项,例如撤消,告诉我们原因
HTML 验证器:https://validator.w3.org/ 表明
YouTube,事实上,许多 Google 网站不 HTML 合规。
注意:我测试了HTML的副本,因为使用URL会裁剪页面后呈现的一些HTML已加载。
我分析了所需的页面,它显示了 1000 多个 html 错误。请参阅下面的错误 #1001:
关于你的问题。所述 ID 重复,这在 HTML 中是不允许的。 ID 用于 CSS 样式(使用 id 格式化多个元素是一种不好的做法。好的做法是使用 class。请参阅:
结论
Google 网站是专业编程学习者的坏榜样。事实上,我曾经在 LinkedIn 上写过一篇文章 Google 如何要求网站遵守一些 SEO 规则,但是 Google 的网站都没有遵循自己的 SEO 规则。有关详细信息,请参阅我在 Linkedin 上的 article。
完全可以有多个元素具有相同的ID。这通常不是最佳实践,但它确实有其偶尔的用途。至于选择器是如何工作的,如果你知道你会有冲突的 ID,你可以将你的选择器与父级一起使用,其中父级下的 ID 将是唯一的。例如 $('div#car span#size) 和 $('div#truck span#size').
实际上,可以使用 类 替换多个 ID。
但是,类 旨在应用样式,而不是标识元素,从而使名称的范围更广,因此可能会重叠。特别是如果使用 3rd 方库。 Id as 'identifier' 不打算相乘,因此显然需要介于两者之间。实际用途是将 page/dom 的部分组件化为单独的逻辑单元。因此需要(至少)使用 2 层识别。
我觉得这很奇怪:
看看上面从 Youtube 截取的屏幕截图。有人可以解释一下多个元素具有相同 ID(dismissable
、dismissed
)的目的是什么?
这些是右侧的建议视频,同时另一个视频正在播放,如下面的屏幕截图所示:
不知道他们为什么要使用 ID。
只要您点击推荐视频中的不感兴趣,他们就会显示这个dismissed div,其中包含一些选项,例如撤消,告诉我们原因
HTML 验证器:https://validator.w3.org/ 表明 YouTube,事实上,许多 Google 网站不 HTML 合规。
注意:我测试了HTML的副本,因为使用URL会裁剪页面后呈现的一些HTML已加载。
我分析了所需的页面,它显示了 1000 多个 html 错误。请参阅下面的错误 #1001:
关于你的问题。所述 ID 重复,这在 HTML 中是不允许的。 ID 用于 CSS 样式(使用 id 格式化多个元素是一种不好的做法。好的做法是使用 class。请参阅:
结论 Google 网站是专业编程学习者的坏榜样。事实上,我曾经在 LinkedIn 上写过一篇文章 Google 如何要求网站遵守一些 SEO 规则,但是 Google 的网站都没有遵循自己的 SEO 规则。有关详细信息,请参阅我在 Linkedin 上的 article。
完全可以有多个元素具有相同的ID。这通常不是最佳实践,但它确实有其偶尔的用途。至于选择器是如何工作的,如果你知道你会有冲突的 ID,你可以将你的选择器与父级一起使用,其中父级下的 ID 将是唯一的。例如 $('div#car span#size) 和 $('div#truck span#size').
实际上,可以使用 类 替换多个 ID。 但是,类 旨在应用样式,而不是标识元素,从而使名称的范围更广,因此可能会重叠。特别是如果使用 3rd 方库。 Id as 'identifier' 不打算相乘,因此显然需要介于两者之间。实际用途是将 page/dom 的部分组件化为单独的逻辑单元。因此需要(至少)使用 2 层识别。