。浏览器的默认样式会在术语和描述之间产生缩进(要改变它的缩进量用margin)。
和:即块级引用和内联引用,除此之外,前者会增加缩进以作为引用的指示符,后者则加入双引号。
(有同名的属性):表示引用,斜体。
,
,,,:即分别是code,preformatted,variable,keyboard和sample都是用于标记计算机代码。分别用于标记计算机通用代码,固定宽度的文本块、其中保留空格(通常是代码块),具体变量名(又是斜体),键盘等的输入和计算机程序的输出。
:即abbreviation。通常还用title属性提供缩写的解释。
:只能用来标记联系地址。也是斜体。
和:分别即Superscript和subscript,上标和下标。
:通过datetime属性将时间和日期标记为可供机器识别的格式。
和
(空元素):分别即break和horizontal rule
属性(Attribute):
class:赋予元素一个用来识别的名字,这个名字此后可以被用来识别此元素的样式信息和其它信息。同一个名字可用于多个class。
herf(hypertext reference)(元素专用):声明超链接的web地址。
title(元素可用):鼠标悬停超链接时的提示信息。
target(元素可用):决定将用于显示链接的浏览上下文。例如,target='_blank'将在新标签页中显示链接。如果你希望在目前标签页显示链接,只需忽略这个属性。
disabled(布尔属性):标记表单输入使之变为不可用。
name(元素可用):指定meta元素的类型,说明该元素包含了什么类型的信息。
content(元素用):指定实际的元数据内容。
rel:即relationship。元素的属性。
src:即source。可作为的属性。
lang:即language。设定语言。
alt(元素用):即alternative。图显示失败时显示这个文本。
id
download:设置点击下载链接后的文件保存用的名字
cite(有同名的元素):引用元素的属性,用来指向引用的资源。cite属性的内容听起来很有用,但不幸的是,浏览器、屏幕阅读器等等不会真的关心它,如果不使用JavaScript或CSS,浏览器不会显示cite的内容。
二、 多媒体与嵌入:
注意:搜索引擎也把图片的文件名计入SEO,因此你应该给你的图片取一个描述性的文件名:dinosaur.jpg 比 img835.png 要好。
警告:大多数图片是有版权的。不要在你的网页上使用一张图片,除非:
l 你是图片版权所有者
l 你有图片版权所有者明确的、书面上的使用授权
l 你有充分的证据证明这张图片是公共的
侵犯版权是违法且不道德的。在得到授权之前永远不要把你的src属性指向其他人网站上的图片,这被称为“盗链(hotlinking)”。同样,盗取其他人的带宽也是违法的。而且这会降低你的页面的加载速度,而且图片可能会在不受你控制的情况下被移走或用别的令人尴尬的东西替换掉。
注意:像和
我们需要备选文本(alt)是因为它经常能派上用场。
你到底应该在 alt 里写点什么呢?这首先取决于这张图片为什么会在这儿,换句话说,如果在这张图片没显示出来,会少了什么:
l 装饰:如果图片只是用于装饰,而不是内容的一部分,可以写一个空的alt=””。实际上,装饰性图片就不应该放在HTML文件里,CSS background images才应该用于插入装饰图片,但如果这种情况无法避免, alt=""会是最佳处理方案。
l 内容:如果你的图片提供了重要的信息,就要在alt文本中提供相同的信息。但如果在主要文本中已经对图片做了充分的说明,写alt=""就好。
l 链接:如果你把图片嵌套在标签里,来把图片变成链接,那你还必须提供无障碍的链接的文本。在这种情况下,你可以写在同一个元素里,或者写在图片的alt属性里,随你喜欢。
l 文本:你不应该把文本放到图片里。例如,如果你的主标题需要有阴影,你可以用CSS来达到这个目的,而不是把文本放到图片里。如果真的必须这么做,那就把文本也放到alt里。
本质上,关键在于图片无法被看见时也提供一个可以用的体验,这确保了所有人都不会错失一部分内容。
用width属性和height属性来指定你的图片的(原本的)宽度和高度是一件好事情。在正常的情况下,这不会对显示产生很大的影响,但是如果图片没有显示(例如用户刚刚开始浏览网页,但是图片还没有加载完成),你会注意到浏览器会为要显示的图片留下一定的空间——这使得页面加载的更快速更流畅。
注意:如果你需要改变图片的尺寸,你应该使用CSS而不是HTML。(?两者对图片尺寸的影响似乎是一样的)
说明文字()和alt的内容不应该一样,因为当图片无法显示时,它们会同时出现。
如果图片对你的内容有意义,就应该使用HTML图片;如果图片纯粹是装饰,就应该使用CSS背景图片。
你的视频应当包括 WebM 和 MP4 两种格式,这两种在目前已经足够支持大多数平台和浏览器。
Note: 文本轨道会使你的网站更容易被搜索引擎抓取到 (SEO), 由于搜索引擎的文本抓取能力非常强大,使用文本轨道甚至可以让搜索引擎通过视频的内容直接链接。
一个好的关于网络安全的经验法则:"You can never be too cautious. If you made it, double-check it anyway. If someone else made it, assume it's dangerous until proven otherwise."
注意:插件是一种对浏览器原生无法读取的内容提供访问权限的软件。
不需要插件了:如果您需要交互性,HTML和JavaScript可以轻松地为您完成工作,而不需要Java小程序或过时的ActiveX / BHO技术。您可以使用HTML5的等来满足媒体需求,矢量图形SVG,以及复杂图像和动画画布。对于工作,Adobe Flash极少是正确的工具,除了专门的游戏和商业应用。
SVG(Scalable Vector Graphics)在很多情况下非常有用 — 它们拥有较小的文件尺寸(因为它们仅需储存少量的算法,而不是逐个储存每个像素的信息),却高度可缩放,所以它们不会在镜头拉近或者放大图像时像素化。矢量图使用算法来定义,而位图(当它被放大时,每个像素就被放大以填满屏幕上更多的像素)使用像素网格来定义,流行的位图格式包括 Bitmap (.bmp), PNG (.png), JPEG (.jpg), and GIF (.gif.)。位图适合像照片那样复杂精密的图像。
响应式图片——一种可以在不同的屏幕尺寸和分辨率的设备上都能良好工作以及有其它特性的图片。响应式图片仅仅只是响应式web设计的一部分(奠定了响应式web设计的良好基础),我们会在未来的CSS topic模块中学到更多关于这一主题的知识。通过让浏览器提供多个图像文件来解决设备屏幕大小不同的问题,比如使用相同显示效果的图片但包含多个不同的分辨率(分辨率切换),或者使用不同的图片以适应不同的空间分配(艺术方向)。CSS是比HTML更好的响应式设计的工具。
elva-fairy-320w.jpg 320w的w意思是width(以px为单位)
元素(Element):
和 (HTML5):后者包含在前者中。元素告诉浏览器和其它辅助的技术工具:这段说明文字描述了
(HTML5):也可用width和height(但长宽比保持不变)。
(HTML5)
:即inline frame。允许您将其它Web文档嵌入到当前文档中。这适合将第三方内容纳入您的网站,你可能无法直接控制,也不希望实现自己的版本——例如来自在线视频提供商的视频,Disqus等评论系统,在线地图提供商,广告横幅等。相关的属性有allowfullscreen(布尔属性,顾名思义)、src、width、height、p(备选内容,不过几乎不可能遇到任何不支持
(XML):引入SVG代码——在文本编辑器中打开SVG文件,复制SVG代码,并将其粘贴到HTML文档中 - 这有时称为将SVG内联。确保您的SVG代码在标签中
:如果是艺术方向,就不直接用srcset和sizes而用带media 和srcset的。在任何情况下,你都必须在 中同时提供一个元素以及它的src和alt属性。
属性(Attribute):
width和height:指定图片的(原本的)宽度和高度,指定视频的宽度和高度。
controls(布尔属性):控件,使用户能够控制视频和音频的回放功能。
autoplay(布尔属性):顾名思义,能使音频和视频立即播放,即使页面的其它部分还没有加载完全。建议不要应用这个属性在你的网站上,因为用户比较反感自动播放的媒体文件。
loop(布尔属性):顾名思义,使媒体循环播放。同样不建议使用,除非有必要。
muted(布尔属性):静音的。使媒体播放时,默认关闭声音。
poster:指向一个图片的URL,这个图片会在视频播放前显示。通常用于粗略的预览或者广告。
preload:用来缓冲较大的文件,有3个值可选:"none" 不缓冲,"auto" 页面加载后缓存媒体文件,"metadata" 仅缓冲文件的元数据。
srcset和sizes——使小屏幕用小体积的图片、大屏幕用大体积的图片。当浏览器成功匹配第一个媒体条件的时候,剩下所有的东西都会被忽略,所以要注意媒体条件的顺序。
srcset定义了我们允许浏览器选择的图像集,以及每个图像的大小。在每个逗号之前,我们写:一个文件名、一个空格和图片的固有宽度(使用w单位,这是图像的真实大小)。
sizes定义了一组媒体条件(例如屏幕宽度)并且指明当某些媒体条件为真时,什么样的图片尺寸是最佳选择。在每个逗号之前,我们写:
一个媒体条件(如(max-width:480px))——你会在 CSS topic中学到更多的。但是现在我们仅仅讨论的是媒体条件描述了屏幕可能处于的状态。在这里,我们说“当视窗的宽度是480像素或更少”;
一个空格;
当媒体条件为真时,图像将填充的槽的宽度(如440px)。
如果希望每个人在屏幕上看到的图片的实际尺寸是相同的,用srcset和x。
media:仅仅当在艺术方向场景下使用。格式为media="(max-width: 799px)"。
三、 HTML tables(表格):
表格:HTML让在web上显示表格数据变的很容易,只需要一点儿的CSS来设定风格。
使用表格布局而不使用 CSS layout techniques 是很糟糕的。
元素:
:一个表格的内容都包含在这里面。
| :即table data,表格的最小内容容器。
:即table row,换行用。
| :即table header,用法和一样,只不过它是标题(不是表格上方那个)。
和 :按列样式化。
:表格的标题,放在中。
, , 和 :即表头、页脚、正文。这些元素不会使表格更易于屏幕阅读器用户访问,也不会造成任何视觉上的改变(胡说,明明强制把页脚放到表格的底部了)。然而,它们在应用样式和布局上会起到作用,可以更好地让 CSS 应用到表格上。注意: 总是包含在每个表中,如果你没有在代码中指定它,那就是隐式的。注:会改变样式,而不会。
属性:
colspan和rowspan:即column span和row span(span为跨度)。这两个属性接受一个没有单位的数字。
span:应用之一——使一个 元素的样式应用到多列。
scope:即范围。添加在 元素中,可选的值有col、row、colgroup和rowgroup,用来帮助屏幕阅读设备更好地理解那些标题单元格是列标题还是行标题。如果要替代 scope 属性,可以使用 id 和 headers 属性来创造标题与单元格之间的联系,但是注意: 这种方式为标题单元格和数据单元格之间创造了非常精确的联系。但是这个方法使用了大量的标记,所以容错率比较低。使用 scope 的方法对于大多数表格来说,也够用了。
其它:
:即Non-Breaking Space,不换行空格,可用于生成空的表格单元。注:直接空着,即 | | ,似乎也行,还更方便。可累加。
四、 HTML forms(表单):
HTML表单是用户和web站点或应用程序之间交互的主要内容之一。它们允许用户将数据发送到web站点。HTML表单和常规HTML文档的主要区别在于,大多数情况下,表单收集的数据被发送到web服务器。
大多数情况下,表单小部件与描述其目的的标签配对——正确实现的标签能够清楚地指示视力正常的用户和盲人用户输入表单要求输入的内容。
从用户体验(UX/UE)的角度来看,表单越大,失去用户的风险就越大。
大部分表单小部件都有一些它们自己的属性。不过,所有表单小部件都有一组相同属性,它们可以对这些小部件进行控制:autofocus(顾名思义)、disabled(顾名思义)、name和value。
如果你不给提供type属性,text就会是默认值;如果你指定的type属性的值在浏览器中是未知的(比如你指定 type="date",但是浏览器不支持原生日期选择器),属性值text就是是备用值。
可选中项小部件(如单选按钮和复选框)与其他表单小部件不一样。对于大多数表单部件,一旦表单提交,所有具有name属性的小部件都会被发送,即使没有任何值被填。对于可选中项,只有在勾选时才发送它们的值。如果他们没有被勾选,就不会发送任何东西,甚至连他们的名字也没有。
如果几个单选按钮的name属性共享相同的值,那么它们将被认为属于同一组的按钮。
元素:
| |