前言:
HTML5 是 HTML 语言最受欢迎的版本之一,它支持音频和视频、离线存储、移动端、和标签属性等等。还提供了<article>, <section>, <header>这样的标签来帮助开发者更好地组织页面内容。然而 HTML5 规范仍然没有最后定稿,并且它并不是一个真正意义上的语义标记语言。
你有没有曾经希望能在 HTML 中使用自定义标签?
比如:使用<logo>来显示你的网站logo,还有使用<toolbar>来显示工具栏等等。
我们经常使用<div id=”container”>和<div id=”wrapper”>来组织页面,在 HTML6 里我们希望可以直接使用象<container>和<wrapper>这样的自定义标签。
和 XML 一样,HTML6 应该支持 namespace(命名空间),如:xmlns:xhtml=”http://www.w3.org/1999/xhtml”
1 <!DOCTYPE html> 2 3 <html:html> 4 <html:head> 5 <html:title>A Look Into HTML6</html:title> 6 <html:meta type="title" value="Page Title"> 7 <html:meta type="description" value="HTML example with namespaces"> 8 <html:link src="css/mainfile.css" title="Styles" type="text/css"> 9 <html:link src="js/mainfile.js" title="Script" type="text/javascript"> 10 </html:head> 11 <html:body> 12 <header> 13 <logo> 14 <html:media type="image" src="images/xyz.png"> 15 </logo> 16 <nav> 17 <html:a href="/img1">a1</a> 18 <html:a href="/img2">a2</a> 19 </nav> 20 </header> 21 <content> 22 <article> 23 <h1>Heading of main article</h1> 24 <h2>Sub-heading of main article</h2> 25 <p>[...]</p> 26 <p>[...]</p> 27 </article> 28 <article> 29 <h1>The concept of HTML6</h1> 30 <h2>Understanding the basics</h2> 31 <p>[...]</p> 32 </article> 33 </content> 34 <footer> 35 <copyright>This site is ? to Anonymous 2014</copyright> 36 </footer> 37 </html:body> 38 </html:html>
在上面的代码中,你也许注意到了一些奇怪的<html:x>标签,它们是 W3C 和 HTML6 规范中在命名空间里定义的标签。
例如:<html:title>负责设定你浏览器的标题栏文字,<html:media>负责显示图片等等。用户可以自己定义标签以便 JavaScript 和 CSS 识别和处理,这样页面代码会更易读,语义更清晰。
HTML6 的标签前带有命名空间,如:<html:html>, <html:head>等等。
1. <html:html>
1 <!DOCTYPE html> 2 <html:html> 3 // this is equivalent to <html> tag written in previous HTML versions 4 <!-- sample of HTML document --> 5 </html:html>
2. <html:head> 和 <head> 标签一样。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <!-- Main content would come here, like the <html:title> tag --> 5 </html:head> 6 </html:html>
3. <html:title> 和 <title> 标签类似。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 </html:head> 6 </html:html>
4. <html:meta> 和 <meta> 标签类似,不同之处在于,在 HTML5 中你只能使用标准的元数据类型,如:”keywords”, “description”, “author”等,而在 HTML6 中你可以使用任何元数据类型。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 <html:meta type="description" value="HTML example with namespaces"> 6 </html:head> 7 </html:html>
5. <html:link> 和 HTML6 之前版本的 <link> 标签类似。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 <html:link src="js/mainfile.js" title="Script" type="text/javascript"> 6 </html:head> 7 </html:html>
6. <html:body> 和 <body> 标签一样。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 </html:head> 6 <html:body> 7 <!-- This is where your website content is placed --> 8 </html:body> 9 </html:html>
7. <html:a> 和 <a> 标签类似,区别是 <html:a> 只有 “href” 一个属性。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 </html:head> 6 <html:body> 7 <html:a href="http://siteurl">Go to siteurl.com!</html:a> 8 </html:body> 9 </html:html>
8. <html:button> 和 <button> 及 <input type=”button”> 一样。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 </html:head> 6 <html:body> 7 <html:button>Click Here</html:button> 8 </html:body> 9 </html:html>
9. <html:media> 涵盖 <img>, <video>, <embed> 等标签的所有功能。<html:media> 的好处是你不用根据不同的媒体文件类型使用不同的标签,媒体的类型由浏览器从文件内容(类型属性,扩展名,和MIME type)中来判断。
1 <!DOCTYPE html> 2 <html:html> 3 <html:head> 4 <html:title>A Look Into HTML6</html:title> 5 </html:head> 6 <html:body> 7 <!-- Image would come here --> 8 <html:media src="img1/logo.jpg" type="image"> 9 <!-- Video doesn't need a type --> 10 <html:media src="videos/slide.mov"> 11 </html:body> 12 </html:html>
和 HTML5 一样, HTML6 也有两种标签类型:单标签(single tag) 和双标签(double tag)
1 <html:meta type="author" content="single tag"> 2 <html:meta type="author" content="double tag" />
单标签不需要结束符’/’
HTML6 规范还未发布,本文原作者Oscar Godson 只是为我们提供了一个对 HTML6 规范的展望,或者说他希望 HTML6 能够支持的一些新特性。
原文:A Look Into HTML6 – What Is It, and What Does it Have to Offer?