- strict表示“严格的”,这种严格体现在有一些标签不能够使用。比如说u标签,就是可以让一个文本加上下划线,但是这和HTML的本质有冲突,即HTML只能够负责语义,不能够负责样式,而u这个下划线就是样式,所以在strict中是不能够使用u标签的。
- 一般页面中偶尔要使用一些类似u这种标签(当做css钩子使用),所以选择XHTML1.0中的transitional版本最为合适。
5.2 字符集
- 字符集用meta标签定义,meta表示“元配置”,就是表示基本的配置项目。charset就是charactor set“字符集”的意思。
- 中文能够使用的字符集有两种:
- 第一种:UTF-8,即;
- 第二种:gb2312,即,第二种也可以写成gbk,即。
- UTF-8是国际通用字库,里面涵盖了所有地球上所有人类的语言文字,比如阿拉伯文、汉语、韩文等;而gb2312是国标,是中国的字库,里面仅仅涵盖了汉字和一些常用外文,以及一些常用的符号。
- 在字库规模方面,由于UTF-8里面保存了世界上所有人类语言,所以描述一个汉字需要的码更多,即UTF-8里面存储了一个汉字3个字节,而gb2312中存储一个汉字2个字节。保存大小:UTF-8(更臃肿、加载更慢) > gb2312(更小巧、加载更快)。
- 需要注意,浏览器就是通过meta配置来看网页是属于什么字符集的,比如你保存时候的meta配置,和保存时编码格式不一致,那么浏览器就会出现乱码现象。
5.3 关键字和页面描述
- meta除了可以设置字符集,还可以设置关键字和页面描述。
- 设置页面描述:
- 只要设置Description页面配置,那么百度搜索结果中就能够显示这些语句,这个技术叫做SEO,即search engine optimization,搜索引擎优化。
- 定义关键字:
- 这些关键字,就是告诉搜索引擎,这个网页是干什么的,能够提高搜索命中率。
6 HTML的基本语法特性
6.1 HTML对换行不敏感,对tab不敏感
- HTML只在乎标签的嵌套结构,嵌套的关系,即谁嵌套了谁,谁被谁嵌套了,和换行、tab无关。换不换行、tab不tab,都不影响页面的结构。
- HTML不是依靠缩进来表示嵌套的,就是看标签的包裹关系,但是,有良好的缩进,代码更易读。
- 空格、tab和换行都会占据字节,百度为了追求极致的显示速度,所以HTML标签都没有换行、也没有缩进,HTML和换不换行没有关系,标签的层次依然清晰,只不过程序员不可读而已。
6.2 空白折叠现象
- HTML中所有的文字之间,如果有空格、换行或者是tab都将被折叠为一个空格显示。
- 即如下代码:
热热
爱爱
- 显示的是后被折叠了:
6.3 标签必须要求严格封闭
- 标签不封闭是灾难性的结果:
欢迎
7 html标签上的说明
7.1 html标签等级分类
- html标签是分等级的,html将所有的标签分为两种:容器级和文本级。
- 顾名思义,容器级的标签,里面理论上可以放置任何东西(如h是容器级的标签。理论上里面可以放置p、ul,语法上的允许,在语义上,不要这么写。);
- 而文本级标签里面,只能放置文字、图片、表单元素等。(如p标签是一个文本级标签,p里面只能够放置文字、图片、表单元素等)
- 正确写法:
```
个人签名
何处不流浪,归途是故乡
- 错误写法:
个人签名
何处不流浪,归途是故乡
- 错误写法使用Chrome的F12审查,你会发现,浏览器自己把p封闭掉了,不让去包裹h2。
- 附加说明:Chrome浏览器是世界上对HTML5支持最好的浏览器,提供了非常好的开发工具,非常适合开发人员使用。(审查元素功能的快捷键是F12)
7.2 img标签
- HTML页面中不能够直接插入图片,而是插入图片的引用地址,所以也要把图片上传到服务器中。插入方法为:,src是英文source“资源”的简写。
- alt是英文中“alternate”替代的意思,就表示不管发生什么原因,当这个图片无法被显示的时候,出现的替代文字(有的浏览器不支持)。
- 关于src属性值相对路径的问题,../表示可以为上一层文件夹,../../表示为上一层的上一层的文件夹。(相对路径不会出现以下这种情况:aaa/../bbb/1.jpg。即../要么不写,要么就写在开头。)
- 面试题:如下有个文件层次图,能在index.html页面中,插入图片1.png的语句为:。
- 解释:document为顶级文件夹,里面有两个文件夹work和photo。work中又有一个文件夹叫做myweb。myweb文件夹中有index.html。所以index.html在myweb文件夹中,上一级就是work文件夹,上两级就是document文件夹。通过document文件夹当做一个中转站,进入photo文件夹,就可以找到1.png。
7.3 超级链接的基本语法
- 一个网站,是由很多html网页组成的,html网页之间能够通过超级链接相互跳转,从而形成“网”。语法为:链接的内容。
- a是英文anchor“锚”的意思,是一个文本级的标签;
- href属性是英文hypertext reference超文本地址的缩写;target属性表示是否在新窗口中打开,blank为“空白”的意思,表示新建一个空白窗口;title属性表示悬停文本。
7.4 页面中的锚点
- 页面当中可以有锚点,所谓的锚点,就是一个小标记,这个小标记是用户不可察觉的,用户不知道这里有一个标记。
- 锚点用name属性进行设置,一个a标签如果有name属性(或者是id属性),就说明是页面中的一个锚点。
我的作品 或者是 我的作品
- 那么页面地址栏上写#wdzp就能够让这个锚点置于页面最顶端显示。
- 这里也可以使用超级链接,指向页面中的锚点,那么就是:点击我就查看我的作品。(也可以从一个页面中使用a标签链接到另一个页面中标记的锚点)
7.5 无序列表
- 无序列表,用来表示一个列表的语义,并且每个项目与每个项目之间,是不分先后的。
- ul就是英文中unordered list,“无序列表”的意思;li就是英文list item,“列表项”的意思。
- 无序列表时一个“组标签”,即要么不写,要么就写一组。(也就是说,li不能够单独存在,必须包裹在ul里面;反过来也是,ul的直接子标签不能是别的东西,只能是li)
以下写法错误,li必须用ul包裹:
为海阳等地区用户提供了全套网页设计制作服务,及海阳网站建设行业解决方案。主营业务为网站设计制作、做网站、海阳网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
- 北京
- 上海
- 广州
- 下面写法也错误,ul里面直接子标签只能有li标签,而不能有其他:(但是li是一个容器级标签,li里面什么都能放,甚至于li标签中可以包含ul标签)
- 浏览器会给默认的无序列表项添加小圆点的“先导符号”,这里强调,ul的作用,并不是给文字添加小圆点,而是添加无序列表的“语义”。
7.6 有序列表
- order list,有序列表,用ol表示。
- 体面
- 下一秒
- 她说
- ol和ul只是语义上的不一样,怎么使用都是一样的。(ol这个东西用的不多,如果想表达顺序,一般也是用ul)
7.7 定义列表
- 定义列表也是一个组标签,不过比较复杂,出现了三个标签:
1、dl表示definition list,定义列表;2、dt表示definition title,定义标题;3、dd表示definition description,表示定义描述词。 - dt、dd只能在dl中;而且dl的直接子标签只能有dt、dd。
- 广州
- 中国南大门,有珠江、小蛮腰
- 上海
- 魔都,有外滩、东方明珠塔、黄浦江
- 表达语义是两个层面的:1、是一个列表,列出了北京、上海、广州三个项;2、每个词都有自己的描述项。(即,dd是用于描述dt的)
- 定义列表用法可以非常灵活,可以一个dt配多个dd:
- 广州
- 中国南大门,有珠江、小蛮腰
- 人特别多
- 上海
- 魔都,有外滩、东方明珠塔、黄浦江
- 还可以拆分开,让每一个dl里面只有一个dt和dd,这样子感觉会清晰一些:
- 广州
- 中国南大门,有珠江、小蛮腰
- 人特别多
- 上海
- 魔都,有外滩、东方明珠塔、黄浦江
- 此外,dt、dd都是容器级标签,想放什么都可以。(页面编辑时,用什么标签,不是根据样子决定的,而是语义决定。)
7.8 div和span
div和span是非常重要的标签,div的语义是division“分割”;而span的语义就是span”范围、跨度”。在css设计样式时,这两个标签,都是最重要的“盒子”。
- 在浏览器中,div默认是不会增加任何的效果改变的,但是语义改变了,div中的所有元素就是一个小区域。div是一个容器级标签,里面什么都能够放置,甚至于可以放置div本身。
- span也是表达“小区域、小跨度”的意思,但是是一个文本级标签。也就是说,span只能够放置文字、图片、表单元素。(即span里面是放置小元素的,而div里面是放置大东西的。)
- div标签也称之为布局标签,如下:
- 我们称呼这种模式叫做“div+css”,div标签负责布局,负责结构,负责分块,而css负责样式。
7.8 表单元素:文本框架、密码框、单选按钮、复选框
- 表单就是收集用户信息的。就是让用户填写、选择的。
欢迎注册本网站
- form是英文表单的意思。form标签里面有action属性和method属性。action属性表示表单提交至哪里。method属性表示用什么HTTP方法提交,有get、post两种方式。