HTML5 微格式和相关的属性名称

所属分类: 网页制作 / html5 阅读数: 1967
收藏 0 赞 0 分享

2004年5月29日,在我退休的博客和所有的大话 ,当我调查40个设计师的网站,看看他们为公共页面元素使用的约定,如标题和横幅,导航,内容和页脚(那时候的结果 )。

这几乎不是科学研究,但在那年6月,我跟进了Eric Meyer的一些意见 ,并出版了一套命名约定。当我发现一个网站已经通过了这些命名约定时,我总是很高兴,我任然每一天都在用,甚至超过4年后的每一天。

那时候我的想法可以概括成这样

id和class属性名称必须反映元素的功能或内容,而不是反映了介绍。 所以出了header并再来branding; 出了footer并再取而代之的是site-info。

Naming should take on almost an XML style structure.命名将要承担几乎整个XML式结构。因此,内部content来了 content-main , content-sub 和 content-supp 。

这些约定为我服务的很好,我所做的,几乎没有改变他们的核心。毫无疑问,他们都使我的工作速度更快,更一致和更有益。 他们使建立产品更容易,以及更容易用我的思维方式培养与我共事的人 。命名约定起作用。

微格式和相关的属性名称
 
让我们面对它,微格式,如hCard,hCalendar,hAtom和其他草案带来了如此多的属性值,以至于常常没有必要考虑哪一个构建文件或提供了哪一个约束CSS模式的挂钩这些更多的属性值。现在我使用微格式达到这种程度,以至于我甚至不使用class属性(微格式伴随的class属性除外)发展整个页面。

在难得的场合,我需要添加一个新元素(假设布局目的的一个划分)我首先想到的是延伸微格式中已经存在的。我将给您举个使用hAtom模式的例子:


<div class="hentry">
<h2 class="entry-title">Title</h2>

<div class="entry-content">
Main content
</div>

<div class="entry-related">
Related content
</div>
</div>

如果您正在保持微格式的优势,你已经注意到, entry-related不是 hAtom 模式的一部分,但在这种的情况下,我绝对地,明确地不得不有一个额外的因素,如何组成一个像related-sidelinks这样的属性值呢?

什么时候延伸微格式的命名模式看起来更合逻辑呢?

HTML5

在这个章节的开始,我应该坦率的说,此时此刻,我对HTML5的关注不能较少。不过,这不是问题的关键。HTML5引入了一些潜在的非常有用的新元素,例如:

section

一个普通的文件或应用程序部分。章节 ,在这方面,是内容的一个主题分类。

article

由文章组成的页面的一部分,构成文档、网页或网站的一个独立部分。 This could be a forum post, a magazine or newspaper article, a Web log entry, a user-submitted comment, or any other independent item of content.这可能是一个论坛,杂志,报纸文章,网络日志,用户提交的评论,或任何其他的内容的独立项目。

aside

由内容组成的页面的一部分,与aside 元素相关的内容无关,并可以被认为是从内容中分离出来的。 这些部分,经常表现为印刷排版侧边栏。

As it was logical for the inventors of Microformats to base their schemas on existing specifications, surely it now makes sense for me to adapt my naming conventions to follow those in HTML5?由于对微格式的发明者来说,在现有的规范上发展他们的模式是合乎逻辑的,当然,现在对我以适应我的命名约定去跟随HTML5很有意义?当然,我还不能使用:


<section>
<h2> Title</h2>

<article>
Main content
</article>

<aside>
Related content
</aside>
</section>

但现在我可以使用id和class属性值来帮助我熟悉的HTML5,带着我的文档朝它更进一步。


<div class="section">
<h2> Title</h2>

<div class="article">
Main content
</div>

<div class="aside">
Related content
</div>
</div>

我觉得对我来说是一个合乎逻辑的下一步。因此,看看这个示范文件,我已经采取了HTML5元素为我的命名约定的基础。除了我刚才提到的,留意,我已经确定了分类和导航的方式(nav ),用colgroup和col构建字段 ,把一个无序列表转换为网格,用datagrid。

HTML5的标记规范还包括details , dialog和figure ,我同样地可以当做属性值使用。

如果今天我可以实现一个愿望,这个愿望将是所有的CSS框架的开发将采取相同的命名约定(而且也广泛地嵌入微格式),以便初学意义丰富的标记和CSS的人们有个正确的出发点,使用的更有意义,更合逻辑,而不是表象的id和class属性。

更多精彩内容其他人还在看

突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)

前面已经总结了主要的API扩展(应用缓存/服务端消息/桌面通知),下面的几个只有在特定的场合才能发挥它的潜质,无一例外,IE均不支持,桌面通知目前只有Chrome支持,感兴趣的朋友可以了解下,或许对你有所帮助
收藏 0 赞 0 分享

HTML5之HTML元素扩展(上)—新增加的元素及使用概述

HTML5中加入了全新的结构型元素,例如页眉header,页脚footer,导航nav,内容article,章节section等除了这种整个页面的结构型元素,html5也加入了块级别的语义元素,感兴趣的朋友可以了解下,或许对你有所帮助
收藏 0 赞 0 分享

HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注

在HTML5增强的元素中,最值得关注的就是表单元素;在HTML5中,表单已经做了重大的修整,一些以前需要通过JavaScript编码实现的功能现在无需编码就可轻松实现,感兴趣的朋友可以详细了解下,或许对你有所帮助
收藏 0 赞 0 分享

HTML5之WebGL 3D概述(上)—WebGL原生开发开启网页3D渲染新时代

WebGL开启了网页3D渲染的新时代,它允许在canvas中直接渲染3D的内容,而不借助任何插件,看到此处是不是感觉特别惊讶啊,WebGL有一个很好的中文教程,就是下面使用参考中的第一个链接,所以这里不再班门弄斧,后面的内容只是简单的总结一下学习的内容,感兴趣的朋友可以了
收藏 0 赞 0 分享

HTML5之WebGL 3D概述(下)—借助类库开发及框架介绍

前面我们看到了使用原生的WebGL API开发是多么的累,只因如此大量的WebGL框架被开发出来,这些框架不同程度的封装了创建3D场景的各种要素你可以快速创建需要的3D场景,感兴趣的朋友可以了解下,或许本文对你有所帮助
收藏 0 赞 0 分享

HTML中fieldset标签概述及使用方法

之前HTML没有好好学,导致以前看到控件组样式感觉很新奇,fieldset> 标签将表单内容的一部分打包,生成一组相关表单的字段,接下来对HTML中fieldset标签的使用进行详细解读,感兴趣的朋友可以了解下,或许对你有所帮助
收藏 0 赞 0 分享

HTML5中微数据概述及在搜索引擎中的使用举例

HTML5微数据规范是标记内容的一种方式,用于描述特定的信息类型,例如评论、人物信息或活动。微数据使用 HTML 标记(常为 span>或 div)中的简单属性为项和属性指定简要的描述性名称
收藏 0 赞 0 分享

html5新增的属性和废除的属性简要概述

HTML5中,在新增加和废除很多元素的同时,也增加和废除了很多属性比如表单相关的属性/链接相关属性是新增的而HTML4中一些属性就被废除掉了,感兴趣的你可以了解下,或许对你学习html5有所帮助
收藏 0 赞 0 分享

html5的新增的标签和废除的标签简要概述

HTML5中在新增加和废除很多标签的同时,也增加和废除了很多标签比如新增的结构标签:section元素/video元素等等,感兴趣的朋友可以了解下,希望本文的知识点对你有所帮助
收藏 0 赞 0 分享

html5配合css3实现带提示文字的输入框(摆脱js)

webkit特有的一个css,可以控制里面的文字样式,配合css3的动画效果和伪类,我们就可以很容易做出一个带动画的输入框,在系统登录、搜索等位置很适合,感兴趣的你可以参考下本文或许可以帮助到你
收藏 0 赞 0 分享
查看更多