当前位置: 首页 > 面试题库 >

html / css ID和类的标准命名约定是什么?

张森
2023-03-14
问题内容

它是否取决于您使用的平台,还是大多数开发人员建议/遵循的通用约定?

有几种选择:

  1. id="someIdentifier"' -看起来与javascript代码非常一致。
  2. id="some-identifier" -看起来更像html5类属性和html中的其他内容。
  3. id="some_identifier" -看起来与ruby代码非常一致,并且仍然是Javascript中的有效标识符

我在想上面的#1和#3最有意义,因为它们在Javascript中的表现更好。

有正确的答案吗?


问题答案:

没有一个。

由于连字符使我的文本编辑器(Gedit)的语法突出显示混乱,因此我一直使用下划线,但这是个人喜好。

我已经在所有地方看到了所有这些约定。使用您认为最好的那一种-
对您来说看起来最好/最容易阅读以及最容易键入的那一种,因为您会经常使用它。例如,如果您的下划线键位于键盘的底部(不太可能,但完全可能),则请使用连字符。只要选择最适合自己的东西即可。此外,所有这三种约定都易于阅读。如果您在团队中工作,请记住遵守团队指定的约定(如果有)。

更新2012

随着时间的流逝,我改变了编程方式。我现在使用驼峰大小写(thisIsASelector)代替连字符;我发现后者相当丑陋。使用
喜欢的任何东西,随着时间的流逝,它们很容易改变。

更新2013

好像我想每年混合一些东西……切换到Sublime
Text并使用Bootstrap一段时间后,我又回到了破折号。在我看来,它们看起来比un_der_scores或camelCase干净得多。
我的原始观点仍然存在 :没有 标准。

更新2015

带有约定的有趣案例是Rust。我真的很喜欢这种语言,但是如果您使用以外的任何东西来定义东西,编译器会警告您underscore_case。您可以关闭警告,但有趣的是,编译器强烈建议默认情况下使用约定。我想象在较大的项目中,它会导致代码更干净,这不是一件坏事。

2016年更新 (您要求的)

我为以后的项目采用了BEM标准。类名最终变得非常冗长,但是我认为它为与之配套的类和CSS提供了良好的结构和可重用性。我认为BEM
实际上是 一个标准(所以我可能no成为了标准yes),但是您决定在项目中使用什么仍然取决于您。最重要的是:与您选择的内容保持一致。

更新2019 (您要求的)

在一段时间没有编写CSS之后,我开始在一个在其产品中使用OOCSS的地方工作。我个人觉得到处乱扔类是非常不愉快的,但是不必一直在HTML和CSS之间切换会产生很大的效果。

不过,我仍然选择BEM。它很冗长,但是命名空间使得在React组件中使用它非常自然。在浏览器测试时选择特定元素也非常有用。

OOCSS和BEM只是其中的一些CSS标准。选择一个适合您的方法-因为CSS 并不是那么好, 它们都妥协了。



 类似资料:
  • 我正在添加一个从web服务器下载文件的功能。我正在用我自己的Google Drive帐户测试我的程序,但是我不确定我应该如何处理Content-Type头,因为我不太懂web编程。 首先,我上传了两个文件到我的谷歌驱动器帐户。这两个文件都是完全相同的zip文件,但我将其中一个文件的扩展名从“zip”重命名为“ktx”,这在上传之前没有任何意义,只是为了测试。上传后,我检查了它们的内容类型头,得到了

  • 问题内容: 是否有类似于JavaBeans的DAO方法的标准命名约定? 例如,我看到的一种命名约定是用来返回单个实体并返回实体列表。 如果没有,那您​​的团队正在使用什么,为什么? 问题答案: 一般我的名字在这样的方式的方法中,该名称暗示将由方法,如所施加的CRUD操作的类型,或。 可以应用于操作,例如。 可以应用于操作,例如。 可以应用于执行操作的方法。 可以应用于操作,例如。虽然我不太确定物理

  • 问题内容: 在网页上,有两个控件块(主要和次要),大多数人会使用什么类名? 选择1: 选择2: 问题答案: 直接问题的答案是正确的在这之下,由柯特。 如果您对CSS类命名约定感兴趣,我建议考虑一种非常有用的约定,即 BEM ( Block,Element,Modifier )。 更新 请在此处详细了解-这是一个较新的版本,它使以下答案过时了。 主要原理: 一个页面是由独立的块构成的。块是HTML元

  • 问题内容: 一位同事问我有关Java API中的类的问题。 按照标准,我确实理解,每个* able结尾的单词都是java API中的接口。有一个关于使用诸如接口名称之类的行业标准。因此,我在不知不觉中告诉他有关Java世界中所有异常和错误类型的基本接口。然后,他向我展示了此类的Java文件。 我的问题: 为什么Java人选择此名称作为类。我认为默认情况下应该是接口? 这是使用* able单词作为界

  • 问题内容: 有谁知道一个很好的资源来解释HTML ID和类的良好命名约定,以及是否以具有btn或button或类似元素类型的ID前缀? 类应该是复数还是单数?我知道ID应该是唯一的,因为它们是唯一的,但是类呢? ID和类应该使用名词,对吗? 我使用的页面会在现有页面中注入其他页面,有点像部分页面……因此……我想知道是否有人在ID和/或类前面加了一个名称前缀..有点像一个名称空间或类似? 任何意见或

  • 为了在跨API开发中向开发者提供一致的开发体验,所有的命名应该保证: 简单 直观 一致 这适用于接口、资源、集合、方法以及消息的命名。 因为很多开发者并非以英语作为母语,所以命名约定的目标之一是确保大多数开发者可以更容易理解 API。对于方法和资源,我们鼓励使用简单、直观和一致的单词来命名。 API 中的命名应该使用正确的美式英语。例如,使用美式英语的 license 而非英式英语的 licenc