上一篇:JavaWeb学习笔记01–HTML
下一篇:JavaWeb学习笔记03–JS(1)
CSS:页面控制
-
CSS概念:
Cascading Style Sheets 层叠样式表。( 层叠:多个样式可以作用在同一个html的元素上,同时生效。)
CSS是一种用来表现HTML或XML等文件样式的计算机语言,不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。 -
CSS优点:
2.1 样式定义多样
CSS提供了丰富的文档样式外观,以及设置文本和背景属性的能力;允许为任何元素创建边框,以及元素边框与其他元素间的距离,以及元素边框与元素内容间的距离;允许随意改变文本的大小写方式、修饰方式以及其他页面效果。2.2 易于使用和修改
CSS可以将样式定义在HTML元素的style属性中,也可以将其定义在HTML文档的header部分,也可以将样式声明在一个专门的CSS文件中,以供HTML页面引用。总之,CSS样式表可以将所有的样式声明统一存放,进行统一管理。2.3 可以压缩页面
在使用HTML定义页面效果的网站中,往往需要大量或重复的HTML标签,使页面文件的大小增加。而将样式的声明单独放到CSS样式表中,可以大大的减小页面的体积,这样在加载页面时使用的时间也会大大的减少。2.4. 将内容展示和样式控制分离
降低耦合度,在工作过程中将内容和样式分开让分工协作更容易,进而提高开发效率。2.5. 多页面应用
CSS样式表可以单独存放在一个CSS文件中,这样我们就可以在多个页面中使用同一个CSS样式表。CSS样式表理论上不属于任何页面文件,在任何页面文件中都可以将其引用。这样就可以实现多个页面风格的统一。 -
CSS的使用:
3.1 CSS与html结合方式
-
内联样式
*.在标签内使用style属性指定css代码
*.如:
*.优点:可以单独什么某个元素样式,缺点:不利于样式重用 。
-
内部样式
*. 在head标签内,定义style标签,style标签的标签体内容就是css代码
*. 如:
-
外部样式
- 定义css资源文件。
链接式: - 在head标签内,定义link标签,引入外部的资源文件
- a.css文件:
- a.css文件:
- 定义css资源文件。
注意:
* 1,2,3种方式 css作用范围越来越大
* 1方式不常用,后期常用2,3
* 3种格式可以写为:
备注:link和@import区别:
1.link所有浏览器都支持,@import某些版本低的IE不支持
2.@import是等待html加载完成才加载,link解析到这个语句,就加载
3.@import不支持js动态修改 -
-
css语法:
* 格式:
选择器 {
属性名1:属性值1;
属性名2:属性值2;
...
}
* 选择器:筛选具有相似特征的元素
* 注意:
* 每一对属性需要使用;隔开,最后一对属性可以不加;
- 选择器:
5.1 选择器的作用:筛选具有相似特征的元素
5.2 选择器的分类:
5.2.1:基础选择器
1. id选择器:选择具体的id属性值的元素.建议在一个html页面中id值唯一
* 语法:#id属性值{}
2. 元素选择器:选择具有相同标签名称的元素
* 语法: 标签名称{}
* 注意:id选择器优先级高于元素选择器
3. 类选择器:选择具有相同的class属性值的元素。
* 语法:.class属性值{}
* 注意:类选择器选择器优先级高于元素选择器
5.2.2. 扩展选择器:
1. 选择所有元素:
* 语法: *{}
2. 并集选择器:
* 选择器1,选择器2{}
3. 子选择器:筛选选择器1元素下的选择器2元素
* 语法: 选择器1 选择器2{}
4. 父选择器:筛选选择器2的父元素选择器1
* 语法: 选择器1 > 选择器2{}
5. 属性选择器:选择元素名称,属性名=属性值的元素
* 语法: 元素名称[属性名="属性值"]{}
6. 伪类选择器:选择一些元素具有的状态
* 语法: 元素:状态{}
* 如: <a>
* 状态:
* link:初始化的状态
* visited:被访问过的状态
* active:正在访问状态
* hover:鼠标悬浮状
- CSS属性
- 6.1 字体属性
.font-size:设置字体大小
.font-family:设置文字的字体,常见的值为 :黑体,宋体,楷体等
.font-style:规定斜体字,常见的值:
normal - 文本正常显示
italic - 文本斜体显示 字体斜体
oblique - 文本倾斜显示 变形斜体
.font-weight 属性设置文本的粗细。关键字 100 ~ 900 为字体指定了 9 级加粗度。
100 对应最细的字体变形,900 对应最粗的字体变形。
数字 400 等价于 normal,而 700 等价于 bold。
font:italic bold 30px "幼圆","黑体"; /*style weight size family swsf*/
- 6.2 文本属性
.color:设置文本颜色
.text-indent:缩进元素中文本的首行,取值类型如下:
text-indent:5em;表示此段落第一行缩进5个字符的宽度
text-indent:20%:表示此段落第一行缩进父容器宽度的百分之二十
.text-decoration:
none:会关闭原本应用到一个元素上的所有装饰
underline: 添加下划线
overline:在文本的顶端画一个上划线
line-through:在文本中间画一个贯穿线
blink:让文本闪烁(无效果)
.text-align:一个元素中的文本行互相之间的对齐方式,值有left(左对齐)、right(右对齐) 和 center(居中)
.word-spacing: 字符之间的间隔
.letter-spacing: 单词或者字母之间的间隔
.line-height:设置行高 line-height:25px;
- 6.3 背景属性:
.background-color:设置背景颜色,默认透明
.background-image:url("图片路径"):设置背景图片
.background-repeat:repeat-y:只在垂直方向都平铺
repeat-x:只在水平方向都平铺
repeat:在水平垂直方向都平铺
no-repeat:任何方向都不平铺
.background-position: 改变图像在背景中的位置。top、bottom、left、right 和 center
- 6.4 列表属性:
.list-style-type:decimal;改变列表的标志类型
.list-style-image: url("images/dog.gif");用图像表示标志
.list-style-position: inside;确定标志出现在列表项内容之外还是内容内部
list-style: decimal url(img/001.png) inside;
去掉样式:
list-style:none;
list-style-type:none;
- 6.5 轮廓属性:
.width:设置元素的宽度
.height:设置元素的高度
显示属性(display)
.display: none 不显示
block:块级显示
inline:行级显示
inline-block:行级块
轮廓(outline)
绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。
常用属性:
.outline-style:solid(实线)/dotted(虚线)/dashed(虚线,虚线的每段较长)/double(框为空心);设置轮廓的样outline-color:red;设置轮廓的颜色
.outline-width:10px设置轮廓的宽度
- 6.6 浮动属性:
浮动(float)的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
- 6.7 clear属性
.left 在左侧不允许浮动元素。
.right 在右侧不允许浮动元素。
.both 在左右两侧均不允许浮动元素。
.none 默认值。允许浮动元素出现在两侧。
.inherit 规定应该从父元素继承 clear 属性的值。
- 6.8 定位属性
.静态定位(默认定位方式)static
.相对定位(relative)
元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留
.绝对定位(absolute)
元素框从文档流完全删除,并相对于其包含块定位。包含块可能是文档中的另一个元素或者是初始包含块。元素原先在正常文档流中所占的空间会关闭,就好像元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框.
.固定定位(fixed)
元素框的表现类似于将 position 设置为 fixed,不过其包含块是视窗本身。
- 6.9 边框属性
.border-style:边框样式,值有以下情况:
solid:实线
double:空心线
dashed:虚线组成的边框
dotted:圆点组成的边框
.border-color:边框颜色
.border-width:边框宽度
.border: 1px solid red;
- 6.10 外边距属性
.margin:外间距,边框和边框外层的元素的距离
.margin:四个方向的距离(top right bottom left)
.margin-top:
.margin-bottom:
.margin-left:
.margin-right:
- 6.11 内边距属性
.padding:内间距,元素内容和边框之间的距离((top right bottom left))
.padding-left:
.padding-right:
.padding-top:
.padding-bottom: