## 10月30日 作业
### 1、元素按显示方式分为哪几种, 并举例, 正确描述它们
- 元素按内容是否可以替换可以分为置换元素和非置换元素;按元素是否独占一行分为块级元素和行内元素。
- 置换元素:`<img>, <input>。<img src="...">:` 以src属性指向引用的外部图片资源,`<input type="...">:` type不同,替换成不同的类型。
- 非置换元素:大多数采用双标签。例如:`<h1>、<p>、<span>、<div>、<table>、<ul+li>、<a>`
- 块级元素:遵循最大化原则,在没有内容撑开的情况下, 需要设置宽高,否则无法感知存在。例如:`<div>、<ul+li>、<table>、<p>`
- 行内元素:遵循最小化原则,总是在一行文本元素的内部生成, 它的宽高由所在行决定,不可以设置。例如:`<span>、<input>`
### 2、CSS是什么? 它的主要作用是什么?
- CSS是层叠样式表,主要作用是用来设置HTML元素在文档中的布局与显示方式
### 3、什么是CSS选择器,它的样式声明是哪二部分组成?
- Css属性选择器又被称为css样式属性,属性名和属性值
### 4、举例演示CSS简单选择器(全部)
- 1、元素名选择器:通过元素的名称找到指定标签
- 格式:元素名{ }
- 2、类选择器:通过标签的class属性值选中指定标签,多个标签可以有相同的class值
- 格式:.d1{ }
- 3、id选择器:通过id找到标签,一个html文件中id不能重复
- 格式: #id{}
- 4、后代选择器:类似于路径,找到符合要求的标签,会匹配所有的后代标签
- 格式: ul li a{} #id li a{}
- 5、子元素选择器:和后代类似,但是只能获得子元素
- 格式: ul>li>a{}
- 6、分组选择器:可以将多种选择器结合到一起使用,用来统一设定样式
- 格式: h1,h2,#abc,.m{ }
- 7、动态元素选择器:伪元素选择器选择的是元素的状态,状态分为以下几种:
- link 表示元素未被点击时的状态
- hover 表示鼠标悬停时的状态
- active 表示元素被点击时的状态
- visited 表示元素被点击后的状态
- 格式: #id:hover{ }
### 5、举例演示常用CSS结构伪类选择器(不少于四种)
- E:fisrt-child :作为父元素的第一个子元素的元素E。与E:nth-child(1)等同
- E:last-child :作为父元素的最后一个子元素的元素E。与E:nth-last-child(1)等同
- E:root:选择匹配元素E所在文档的根元素。在HTML文档中,根元素始终是html,此时该选择器与html类型选择器匹配的内容相同
- E F:nth-child(n):选择父元素E的第n个子元素F。其中n可以是整数(1,2,3)、关键字(even,odd)、可以是公式(n+1),而且n值起始值为1,而不是0.
- E F:nth-last-child(n):选择父元素E的倒数第n个子元素F。此选择器与E:nth-child(n)选择器计算顺序刚好相反,但使用方法都是一样的,其中:nth-last-child(1)始终匹配最后一个元素,与last-child等同
- E:nth-of-type(n) :选择父元素内具有指定类型的第n个E元素
- E:nth-last-of-type(n):选择父元素内具有指定类型的倒数第n个E元素
- E:first-of-type:选择父元素内具有指定类型的第一个E元素,与E:nth-of-type(1)等同
- E:last-of-tye :选择父元素内具有指定类型的最后一个E元素,与E:nth-last-of-type(1)等同
- E:only-child :选择父元素只包含一个子元素,且该子元素匹配E元素
- E:only-of-type:选择父元素只包含一个同类型子元素,且该子元素匹配E元素
- E:empty: 选择没有子元素的元素,而且该元素也不包含任何文本节点
- 结构伪类选择器,可以根据元素在文档中所处的位置,来动态选择元素,从而减少HTML文档对ID或类的依赖,有助于保持代码干净整洁。
- 结构伪类选择器很容易遭到误解,需要特别强调。如:
```css
p:first-child;
```
- 它表示的是:选择父元素下的第一个子元素 p,而不是选择 p 元素的第一个子元素。
### 举例演示常用CSS表单伪类选择器(不少于三种)
- E:checked(选中状态伪类选择器):匹配选中的复选按钮或者单选按钮表单元素
- E:enabled(启用状态伪类选择器 ):匹配所有启用的表单元素
- E:disabled(不可用状态伪类选择器):匹配所有禁用的表单元素
- 元素状态伪类选择器主要是针对于HTML中的Form元素进行操作,最常见的比如我们"type="text"有enable和disabled两种状态,前者为可写状态后者为不可状态;另外"type="radio"和"type="checkbox""有"checked"和"unchecked"两种状态。来看两个实例,比如说你想将"disabled"的文本框与别的文本框区别出来,你就可以这样应用:
```css
input[type="text"]:disabled {border:1px solid #999;background-color: #fefefe;}
```
* 注意:IE6-8不支持":checked",":enabled",":disabled"这三种选择器。