avalon 的HTML规范
由于avalon以绑定属性实现对DOM的选择与操作,页面的美观与调试就变得至关重要。参照boostrap的HTML规范,制定如下
属性排列的规范
- class (class, id, name与浏览器的原生选择器相关,因此需靠前 )
- id,name (这个定义的顺序直接影响到元素的attributes中的特性节点的排列顺序,id具有独占性,慎用)
- data-* 这涉及到内部dataset对象的生成,并且表示组件的data-button-*属性应排在只表示缓存的data-*属性前面
- ms-* 没有属性值的排在有属性值的前面, 依长度排列
- type title for hre f src style等原生属性, 依长度排列
- 用户自定义属性, 依长度排列
< div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-front" data-drag-handle="handle" data-drag-before-start="beforeStart" ms-draggable ms-visible="toggle" ms-css-width="width" ms-css-height="height" tabindex="-1" style="position: absolute;" > < div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix" > < span class="ui-dialog-title" >{{title|html}}</ span > < button class="ui-dialog-titlebar-close" data-button-text="false" data-button-icon-primary="ui-icon-closethick" ms-widget="button" ms-click="close" type="button" >close</ button > </ div > </ div > |
注,我们应该尽可能少用ID,因为较新的浏览器中,它们都学IE5那样直接把ID映射成一个全局变量,可能会引发各种奇怪问题。单页应用的设计原则就是组件化,在这里面,不应有页面的观念,只应有组件的观念。在组件系统里首先应该避免的就是全局变量,id不幸就是这方面的典型。
空格与换行的处理
标签名如有属性,第一个属性必须与它同行,第二个属性换行,位置于第一个属性对齐,其他属性照办
属性格式的规范
属性名必须小写, 属性值必须用双引号括起,对于表单元素的布尔属性(如checked, selected, disabled)直接忽略属性值
闭合的规则
自闭包标签必须以“/>”结束,其他的格式都应为“<xxx>ffffffffffffffff</xxx>”
如果您觉得此文有帮助,可以打赏点钱给我支付宝1669866773@qq.com ,或扫描二维码


机器瞎学/数据掩埋/模式混淆/人工智障/深度遗忘/神经掉线/计算机幻觉/专注单身二十五年
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
2013-04-03 我的模块加载系统 v24
2011-04-03 Object.create
2010-04-03 日本几个有名的博客