那些被我遗忘掉的XHTML标签们
作者:dudo 来源:dudo博客 发布时间:2008-06-07 14:27:00
突然发现自己对Web前端技术掌握得很少很少,就是自己最感兴趣的XHTML+CSS部分知道也不算多。在XHTML 1.1规定的诸多元素中,我平时能用到的只有那么几个,有一半吧,其余得很少在设计中用到。这并不是说没有可以使用的地方,而是自己对他们的使用缺乏了解,即便他们的使用范围本来就很窄,但是他们能从HTML过度XHTML中,说明他们有不可替代的地方。在不断追求Web标准的今天,前端开发者们应该让每个XHTML标签都有用武之地,否则更不用谈什么Web2.0了。
现在,就让我一一找回那些被遗忘在角落里的XHTML标签们吧。
字符串格式化 :相对比较熟悉的元素
em与strong
相对于其它元素来说,em和strong应该是比较常见的,我只知道它们都是用来强调文本的,但是不是很了解它们的差别。em和strong都用来强调语气,不过strong的语气更加强烈一些。big与small
和字面意思一样,它们是来控制字符大小的。不过这里要说的是我们在CSS中设定字体的时候一般会设12px、9pt 等。而按照Web标准的要求我们应该使用 font-size:small,font-size:middle等,所以相应地使用big和small来随意扩大和缩小字符。输出 :我对这一组元素基本上很陌生
code
<code>标签用来指定一段程序代码,就象我们在UBB里使用的[code][/code]一样,我没有注意UBB转换之后是不是使用了<code></code>,如果没有那就问题了。<code>这是一段放在程序代码</code>
<tt>
<tt>呈现的是打字机的效果或者是等宽字体。的确,它很少会被用到了已经。kbd
<kbd></kbd> 之间是一段键盘字符,也就是说,它之间的字符都是能由键盘直接输入的。在我见到的情况中,很多时候它都是和<code></code>替换使用,这可能和个人的理解有关。 在清除浮动(闭合浮动元素)的方法总结与选择 的演示示例中我就使用了<kbd>标签来盛装CSS代码。var
<var></var>之间定义的是变量。dfn
这个标签专门用来下定义时使用。比如要解释什么是什么的时候,就应该使用<dfn>标签:
上面提到的这几个标签一般只有在计算机编程中才会用到,例如,当你向页面输出代码时。所以对它们觉得陌生没有什么好奇怪的。块级元素:
<acronym>与<abbr>
两者都是代表标签之间的内容为缩写形式,不同的是<acronym>定义的是首字母的缩写,<abbr>定义的是普通的缩写形式。它们都有一个title属性,当鼠标移到这段文字上时会显示提示,并且还可以帮助浏览器检查拼写错误。如下页面的代码(鼠标放到缩写元素上可以看到全称):
是Web标准的一部分;
etc.<address>
dudo@dudo.org
定义地址。其时这个标签应该经常被用到,比如一个Email地址等,但是当我们写Email地址的时候我常常就当作一般字符来处理,很少考虑到使用<address>,即使有时想表现特殊效果。<blockquote>、<q>、<cite>
三者都和引用有关,其中<blockquote>用于较长的引用,它有一个cite属性用于指定被引用的内容出处。同时,作为块级元素,其内部可以出现其它XHTML标签而不仅仅是文本。如果你要通过Strict验证则必须包含一个块级元素,如:<blockquote>
<p>一段文本</p>
</blockquote><blockquote>之间的文本在显示时会两端自动缩进以突出引用内容。
<q>用于短内容的行内引用,它也有一个cite属性用于指定引用来源。根据XHTML1.0的规定,<q></q>之间的内容必须以引号开始并以引号结束。
<cite>可使用该标签对参考文献的引用进行定义,比如书籍或杂志的标题。如:
《CSS Mastery》<ins>与<del>
它们是经常一起出现的一对标签。主要用于对内容的修改——删除掉原来的,替换成两个的。如:
本站网址已经从www.duxinhua.cn更换为:www.dudo.org。输入
<button>
<button>一个本不该被遗忘的元素,但是它却在很多时候被<input type="button">代替,关于<button>的使用有太多太多的技巧,因此强烈推荐你阅读这篇被遗忘掉的button标签<optgroup>
这个标签主要是配合<option>一起使用用于分组下拉列表,我们可以这样使用:<select>
<optgroup label="China">
<option value="Beijing" selected="selected">Beijing</option>
<option value="Shanghai">Shanghai</option>
</optgroup>
<optgroup label="US">
<option value="New York">New York</option>
<option value="Washington">Washington</option>
</optgroup>
</select>
演示效果,其中label属性用于指定分组名称:元信息
<base>
<base>标签其实在做.net的时候用过,用它来指定所有链接都打开一个新窗口。<base>标签是元信息,它必须出现在<head></head> 之间,它有两个属性:href和target。其中,href是必须属性,它用于指定基准链接,这主要是用于页面中使用相对地址的链接,比如你指定href=http://www.dudo.org/的话,所有相对地址如"article.asp"等转换为绝对地址之后都是http://www.dudo.org/article.asp的形式,要注意,这和你的文件所处的目录层次没有任何关系。taget属性用于指定是打开新窗口还是基于父窗口,与<a>相同。这篇文章主要想熟悉一下被自己遗忘的那些元素。其实它们都有自己的用武之地,只是我对Web标准的掌握还远远不够,所以才会有很多元素淡出了自己的视线。其实不是遗忘,是自己对Web标准的理解已经走进了误区。我总结了一下,可能会有下面的几个因素:
不重语义。有时候我突出某些词组的时候会简单地使用<b></b>一类的标签,有时候还会使用<span style="color:red"></span>等,这些都不够语义,强调就应该用<em>和<strong>,虽然我们可以使用CSS来使得它们在浏览器里看起来没有什么区别,但是对于浏览器和搜索引擎来说,完全不是一个概念;
过度的Web标准。在写XHTML结构的时候一味追求代码简洁,能省掉一个标签就省掉一个标签,甚至认为比别人多用一个标签就是比别人水平低一下节,导致这些元素失去用场。比如使用<acronym>、<abbr>等,我的文章里经常出现简写,我却从来没有使用过这两个标签,因为觉得它们不会带来任何表现上的改进,还会增加DOM深度;
对语意的错误理解,过度注重布局。对于Web标准的理解还只停留在布局的认识上,知道使用ul、ol、dl等元素代替<div>和<table>,以为这就是注重语义了,其实语义无非这些。有些朋友也和我一样,它们对于Web标准的理解还只停留在布局上,认为布局里使用合理的标准就可以了,但是内容,怎么去表达页面的内容,也同样重要。


猜你喜欢
- Tornado 4.0 已经发布了很长一段时间了, 新版本广泛的应用了协程(Future)特性. 我们目前已经将 Tornado 升级到最新
- 这是我在做的一个游戏的半成品,整理了一下发出来.原理:通过更新变换矩阵来记录转动(函数remx()).利用矩阵计算出转动后的正方体顶点坐标,
- 关于Pytorch的MNIST数据集的预处理详解MNIST的准确率达到99.7%用于MNIST的卷积神经网络(CNN)的实现,具有各种技术,
- 1、方法一在使用多线程更新 MongoDB 数据时,需要注意以下几个方面:确认您的数据库驱动程序是否支持多线程。在 PyMongo 中,默认
- 本文实例为大家分享了OpenCV基于ORB算法实现角点检测的具体代码,供大家参考,具体内容如下ORB算法是FAST算法和BRIEF算法的结合
- ndarray 的数据类型数据类型,即 dtype ,也是一个特殊的对象, 它包含了ndarray需要为某一种类型数据所申明的内存块信息(也
- html<!--图片轮播 Start--><div class="pics-ul">
- PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中
- 一、Python安装:最新Python版本的下载和安装可以参考我的这篇博客,里面有步骤说明和注意事项。二、手动更新pip:在安装第三方插件时
- 今天我发现这个结论是错误的。但是为了方便理解,我仍然不建议大家在不熟悉sql语句时,把里面的约束跟外面的约束混为一谈。从可读性方面来说,可以
- 在学习人工智能时,大量的使用了np.random.seed(),利用随机数种子,使得每次生成的随机数相同。我们带着2个问题来进行下列实验np
- 注:本次实验的数据在文章最后面,我已上传至百度网盘一.json模块对数据进行处理 上面三个txt文本是这三个国家疫情爆发相关的数据
- 1、yield,将函数变为 generator (生成器)例如:斐波那契数列def fib(num): a, b, c = 1,
- yagmail 实现发邮件yagmail 可以更简单的来实现自动发邮件功能。1、安装pip install yagmail2、简单举例imp
- 一、作用主要用于保留组件状态或避免重新渲染。二、用法<keep-alive> 包裹动态组件时,会缓存不活动的组件实例,
- group_concat()函数的参数是可以直接使用order by排序的。666。。下面通过例子来说明,首先看下面的t1表。比如,我们要查
- 前言: 在各类技术岗位面试中,似乎 MySQL 相关问题经常被问到。无论你面试开发岗位或运维岗位,总会问几道数据库问题。经常有小伙
- 第一个保存在新建一个文本中<% Dim Username,PassWord,strLogFile,f,ff,Str
- 前言python下的setuptools带有一个easy_install的工具,在安装python的每三方模块、工具时很有用,也很方便。安装
- 本文实例讲述了php版本CKEditor 4和CKFinder安装及配置方法。分享给大家供大家参考,具体如下:下载并解压CKEditor 4