任务7_HTML4

课程目标

  • 熟悉列表的使用场景和用法
  • 理解HTML语义化
  • 理解行内元素、块级元素概念
  • 熟悉常见input表单的使用方式
  • 掌握 POST 与 GET 方式的区别

学习建议

语义化、行内元素块级元素、POST 和 GET 的区别这是面试必问的知识点

预习视频

课程任务

问答

有序列表、无序列表、自定义列表如何使用?写个简单的例子。三者在语义上有什么区别?在哪些情况下使用哪种(重要)? 如何嵌套?

有序列表、无序列表、自定义列表如何使用?写个简单的例子。

  • 有序列表

  • 定义和用法

    • <ol> 标签定义有序列表。有序列表可以是数字或字母顺序。
    • 请使用 <li>标签来定义列表项。
  • 属性

    • 有序列表的属性

以下为代码实例:

<ol>
<li>有序列表</li>
<li>有序列表</li>
<li>有序列表</li>
</ol>
  • 无序列表(使用频率最多的列表)
  • 定义和用法
    • <ul>标签定义无序列表
  • 提示与注释
    • 即使有属性来约束其外表,但是不建议属性,推荐用CSS去实现这一效果
  • 可选的属性
    • 无序列表可选的属性

以下为代码实例:

<html>
<body>
<h4>一个嵌套列表:</h4>
<ul>
  <li>咖啡</li>
  <li>茶
    <ul>
    <li>红茶</li>
    <li>绿茶
      <ul>
      <li>中国茶</li>
      <li>非洲茶</li>
      </ul>
    </li>
    </ul>
  </li>
  <li>牛奶</li>
</ul>
</body>
</html>
  • 自定义列表
  • 定义与用法
    • 定义一个定义列表,<dt>为表头<dd>为列表内容

以下为代码实例:

<html>
<body>
<h2>一个定义列表:</h2>
<dl>
   <dt>计算机</dt>
   <dd>用来计算的仪器 ... ...</dd>
   <dt>显示器</dt>
   <dd>以视觉方式显示信息的装置 ... ...</dd>
</dl>
</body>
</html>

以下为简单的例子:

列表方面的简单的例子

三者在语义上有什么区别?在哪些情况下使用哪种(重要)?

  • <ol>标签定义有序列表,强调的是先后次序之分
  • <ul>标签定义无序列表,大多对顺序没有要求或者为并列的关系
  • <dl>标签定义自定义列表,表现为自己定义项目,并对该项目进行说明,有时更简单精确,语义化更好

如何嵌套?

直接在<li>标签里面再写入<ul>等标签,以下为简单的代码展示

<html>
<body>
<h4>一个嵌套列表:</h4>
<ul>
  <li>咖啡</li>
  <li>茶
    <ul>
    <li>红茶</li>
    <li>绿茶</li>
    </ul>
  </li>
  <li>牛奶</li>
</ul>
</body>
</html>

详见图“列表方面的简单例子”实例

如何去除列表前面的点或者数字?

调研得到去除列表前面的样式有两种途径

  • 在head里的style内,写入如下代码
<style>
ul ol{
list-style: none;
}
</style>
  • 在body内部的ul,ol内部写入如下代码
<body>
<ul>
<li style="list-style: none">你</li>
<li>我</li>
<li>他</li>
</ul>
</body>

参考文章:

class 和 id 有什么区别?什么时候用 class 什么时候用 id?

class 和 id 有什么区别?

  • class的定义和用法

  • class 选择器设置标签的类,用于指定元素属于何种样式的类。

  • id的定义和用法:

  • id选择器设置标签的标识,用于定义一个元素的独特的样式。

  • 两者的区别

  • class可以反复使用而id在一个页面中仅能被使用一次

  • id具有唯一性,而class是一个类

  • class类选择器的权重没有id选择器的权重大

什么时候用 class 什么时候用 id?

  • 什么时候用class
  • 由于class可以在页面中被无限使用,所以可以尽可能多的利用class
  • class标签定义一类的属性,当网页中好多内容需要利用同一样式时,请利用class来减小工作量,简化代码
  • 什么时候用id
  • 在页面较大的模块里可用id来来
  • 由于id在网页中是唯一的,可用id来区分不同的模块,比如页面中有如下模块时:今日要闻、推荐新闻、最新新闻...时可用id来区分
  • 另外由于id在页面内是唯一的,最好留给js去用

参考文章:

块级元素、行内元素是什么?有什么区别?分别对应哪些常用标签?

块级元素、行内元素是什么?

  • 块级元素的定义和用法:
  • 块级元素占据其父元素(容器)的整个空间,因此创建了一个“块”。通常浏览器会在块级元素前后另起一个新行。
  • 行内元素定义和用法:
  • 行内元素只占据它对应标签的边框所包含的空间。
  • 有什么区别
  • 块级元素会占据一整行,行内元素只会占据自身内容的宽度(可利用chorme的开发者工具去检查元素是块级还是行内的,具体表现为鼠标悬停在上面是一整行(块级元素)还是一小区域(行内元素))
  • 行内元素可以并排显示,块级元素不会
  • 默认情况下,块级元素会新起一行,行内元素不会
  • 块级元素可以包含行内元素和其他块级元素,而行内元素只能包括数据和其他行内元素

分别对应哪些常用标签

  • 块级元素:div、p、h1...h6、table、tr、ul、li、dl、dt、form
  • 行内元素:a、span、img、input、button、em、textarea

display: block、display: inline、display: inline-block分别有什么作用?

  • display: block的定义和用法
  • 此元素将显示为块级元素,此元素前后会带有换行符。
  • display: inline定义和用法:
  • 默认。此元素会被显示为内联元素(也称作内嵌元素、行内元素),元素前后没有换行符。
  • display: inline-block的定义和用法:
  • 行内块元素,既能像行内元素一样水平排列,又有块级元素的特性,
    注:IE8以下不能用

下面代码是做什么的?抄写一遍下面的代码,注意class和id的使用及命名方式

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .wrap {
            width: 900px;
            margin: 0 auto;
        }
    </style>
</head>
<body>
    <div id="header">
        <div class="wrap">
            <a id="logo" href="#"><img src=""></a>
            <ul class="nav">
                <li><a href="#">导航1</a></li>
                <li><a href="#">导航2</a></li>
                <li><a href="#">导航3</a></li>
            </ul>
        </div>
    </div>
    <div id="content">
        <div class="wrap">
            <div class="aside">侧边栏</div>
            <div class="main">中心区块</div>
        </div>
    </div>
    <div id="footer">
        <div class="wrap">这里是 footer</div>
    </div>
</body>
</html>

以上代码做了如下的几件事:

  • 利用id将整个页面分为了header/content/footer三个部分
  • content和footer里面都有利用class定义的"wrap"类
  • CSS将wrap类的类型设置为900px宽,可以阻止它从左到右撑满容器。然后你就可以设置左右外边距为 auto来使其水平居中。元素会占据你所指定的宽度,然后剩余的宽度会一分为二成为左右外边距。

如何理解 HTML CSS 语义化? 在平时写代码的过程中要注意哪些细节

HTML语义化表现为选择合适的标签,使用合理的代码结构,这样可以将页面合理的分层,使其更加清晰明了,而且便于开发者阅读,同时能够让浏览器的爬虫和机器更好地去解析

form表单有什么作用?有哪些常用的input 标签,分别有什么作用?

form表单有什么作用?

用于把用户输入的数据提交到后台

有哪些常用的input 标签,分别有什么作用?

input的定义和用法:用于搜集用户的信息等,他有如下常用的标签

  • checked:规定此 input 元素首次加载时应当被选中
  • disabled:规定此 input 元素首次加载时应当被选中
  • maxlength:规定输入字段中的字符的最大长度
  • name:定义 input 元素的名称,所有的input必须有name
  • placeholder:规定帮助用户填写输入字段的提示
  • value:规定 input 元素的值
  • type
    • type="text": 用于输入文本。placeholder属性(可选)展示的是输入框里的提示,maxlength(可选)限制最大输入长度;
<!-- 要加上name -->
<input name="username" type="text" placeholder="用户名" maxlength=10 />   

placeholder的作用是为了在输入框里输入一些提示信息
maxlength的作用是限制了最大输入的字符数

  • type="password": 用于输入密码,输入的内容显示为星号。
    <input name="password" type="password" placeholder="密码" />

  • type="radio": 单选圆圈按钮。注意:name要相同才能实现单选,value要有值

<input type="radio" name="sex" value="male" /> 男
<input type="radio" name="sex" value="female" /> 女
  • type="checkbox":复选框。加checked属性会默认选上。提交时,如果选中(如bike),则bike=on
<input type="checkbox" name="bike"  checked/>自行车
<input type="checkbox" name="car" />汽车```
  - type="textarea": 文本域,用于输入多行文本

<textarea name="maneywords" maxlength=10 placeholder="ddd"></textarea>

  - type="hidden": 隐藏域,用户看不到,用于暂存数据。或者安全性校验

<input name="url_delete" type="hidden" value="/delete.php" />
<input name="csrf_token" type="hidden" value="a23dafd23444" />

 - type="submit"

<input type="submit" value="提交" >


> ### post 和 get 方式的区别?

|比较方面|post|get|
|:--:|:--:|:--:|
|数据提交方式|看不到|提交的数据url可以看到|
|数据量|提交大量数据,从而得到少量的提示|提交少量数据,从而得到大量数据(比如搜索和查询)|
|数据量限制|理论上无限制,受服务器限制|最多提交1k数据,受浏览器的限制|
|安全性|安全性较好|提交的数据在浏览器历史记录中,安全性不好|

注:若method没写,则默认get

> ###在input里,name 有什么作用?

name属性的定义和用法:用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。
- 在单选框中如果name相同,则他们为一组
- 复选框中name可相同
以下为实例:

爱好
<input type="checkbox" name="love" value="basketball" checked/>篮球
<input type="checkbox" name="love" value="football" checked/>足球


> ###```<button>提交</button>```、```<a class="btn" href="#">提交</a>```、```<input type="submit" value="提交">```三者有什么区别?

- ```<button>提交</button>```没有任何作用,只是单纯的两个字
- ```<a class="btn" href="#">提交</a>```虽然是一个链接,但是他并没有把数据提交到后台,点击效果仅仅是跳转到了当前的页面
- ```<input type="submit" value="提交">```提交了一个表单的数据
以下为实例:
![提交按钮三者的区别.png](http://upload-images.jianshu.io/upload_images/2331515-ba7a50ea1a914c93.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

> ### radio 如何分组?

 type="radio"为<input>标签里的属性: 代表单选圆圈按钮。
name要相同才能实现单选的分组,并且value要有值

<input type="radio" name="sex" value="male" /> 男
<input type="radio" name="sex" value="female" /> 女


> ### placeholder 属性有什么作用?

placeholder的作用是为了在输入框里输入一些提示信息
以下为实例:
![placeholder.png](http://upload-images.jianshu.io/upload_images/2331515-5f0b4b84fcfea843.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

> ### type=hidden隐藏域有什么作用? 举例说明

"type=hidden"为隐藏域,用户看不到,用于暂存数据。或者安全性校验
以下为实例,只有后台接收到hidden里的正确的数字时,才会接受其所提交的数据

<form class="myform" action="index.html" method="post">
<p>
用户名:
<input type="text" name="username" placeholder="用户名"/>
</p>
<p>
密码:
<input type="password" name="password" placeholder="密码"/>
<input type="hidden" name="hidden" value="123456789">
</p>
<p>
<input type="submit" name="submit" value="提交">
</p>
</form>

![hidden.png](http://upload-images.jianshu.io/upload_images/2331515-00ffa192df2de521.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

***

> ###代码

- [task_07_01](https://github.com/jirengu-inc/jrg-renwu5/blob/master/%E5%88%98%E6%B1%9F/task_07/task_07_01.html)

***

***本教程版权归本人和饥人谷所有,转载须说明来源***
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,633评论 18 139
  • 一、有序列表、无序列表、自定义列表如何使用?写个简单的例子。三者在语义上有什么区别?在哪些情况下使用哪种(重要)?...
    鸿鹄飞天阅读 687评论 0 0
  • 一、有序列表、无序列表、自定义列表如何使用?写个简单的例子。三者在语义上有什么区别?在哪些情况下使用哪种(重要)?...
    咩咩咩1024阅读 501评论 0 0
  • 1. 有序列表、无序列表、自定义列表如何使用?写个简单的例子。三者在语义上有什么区别?在哪些情况下使用哪种(重要)...
    小木子2016阅读 199评论 0 0
  • 1.有序列表、无序列表、自定义列表如何使用?写个简单的例子。三者在语义上有什么区别?在哪些情况下使用哪种(重要)?...
    墨月千楼阅读 281评论 0 0