这与DOM元素的id属性和name属性的命名约定有关。当涉及到JavaScript时,从我的理解和所做的工作来看,除了类的名称之外,总是使用 Camel 大小写。类是Pascal大小写。
在ASP.NET中,如果你将一个新的服务器控件拖放到一个页面上(我很少这样做,我是一个喜欢输入标记的人),默认的名称总是Pascal大小写,因为它们需要符合.NET框架的服务器端代码命名指南。
因此,当涉及到命名ASP.NET服务器控件的id属性或标记中的元素时,我遵循了id属性大小写的规则(JavaScript命名准则),但这与.NET命名准则相冲突。
那么,第一,你们通常对DOM元素中的id属性使用什么样的大小写?第二,在ASP.NET中开发的.NET人员对id属性的命名是怎么做的?
最重要的是,当我在标记中创建表单元素时,我通常使用匈牙利符号来进行文本输入,如
<input type="text" id="txtUserName" />
字符串
或复选框,如
<input type="checkbox" id="chkSelectAll" />
型
这肯定违反了.NET服务器端代码命名指南,可能也违反了JavaScript指南。
任何建议都非常感谢。
6条答案
按热度按时间kupeojn61#
BW_RCB01_SW
对几年前做CSS的团队来说很有意义,但现在对我来说没有任何意义,我不得不向后工作,试图翻译BW_RCB01_SW
对应于我的目的,或者记住翻译或将其记录在某个地方。更好?blackwhite-boxtype1-bottomleft
。它更长,但也不需要Rosetta Stone。pageContainerLeft
和pageContainerleft
不一样。bvuwiixz2#
尽可能少的引用对象肯定有助于保持整洁。如果你能通过命名父对象并只引用子对象来获得,那会更好(在我看来)。你会得到在每个页面上呈现给客户端的html稍微少一点的好处。
因为当我必须给元素命名时,我更喜欢所有的下划线符号。我以前在CSS文件中没有正确处理我的情况,所以如果我能尽早将其视为一个问题,那就放心了。
下划线是字符,而破折号可以被解释为减号,所以这是另一个潜在的问题-只坚持使用下划线是有意义的。例如,Flex不接受带有以破折号命名的属性的XML(我知道这些是值而不是属性;但仍然是一个安全的选择)。
我同意上面的观点--没有元素类型或定位或颜色作为class/id。匈牙利符号== bad。对于确定什么是ID非常有用。我喜欢以特定于对象的方式命名表单字段-
user_login, user_email, user_address_state_id, user_address_country_id
等,可能都会显示在用户注册表单上。通常非表单字段的长度不足以下划线,否则您可能可以重命名它们。4xrmg8kj3#
我上一份工作中的一位HTML大师实际上建议用破折号分隔多字ID
字符串
我很难想起来为什么--我再也不能访问那些内部标准文档了。我知道这并不能回答你关于Pascal和Camel shell 的问题。
我个人建议不要使用HN -我发现这是一个很大程度上令人憎恶的做法。如果你需要将复选框数组改为选择元素,会发生什么?现在元素的ID具有错误的语义。这不值得麻烦,IMO。
rsaldnfx4#
信不信由你,但我在使用某些JavaScript库时遇到过用连字符作为id和css类名的问题。这是非常罕见的,但你显然想避免这样的事情。因此,我使用 Camel 大小写或下划线。你也可以使用下划线。
否则,一般的规则是有意义的名字,容易阅读和理解。当涉及到“控件”,请确保您遵循某种命名约定。就个人而言,我更喜欢后缀前缀(即nameText而不是textName),但我尽量避免后缀,因为我觉得它们太冗长了。
所以:1。有意义的名字。2。避免后缀/前缀。3。避免缩写(即。地址而不是地址)。4。慢慢来。
u3r8eeie5#
根据mozilla(dom的最佳源代码),最好的做法是使用字母字符和连字符(如果有多个单词)。
尽管让你的ID具有一定程度的人类可读性对于代码理解是有用的,例如考虑“ticket-18659”与“r45 tgfe-freds &$@”
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id
gorkyyrv6#
下面是一些命名准则,它们帮助我在DOM中使用id和类: