CSS的三种样式

CSS全称为 Cascading Style Sheets,译为层叠样式表。CSS有三种样式:内联样式,内嵌样式,外联样式。

内联样式

内联样式通过HTML元素的style属性来设置CSS样式,语法如下:

示例代码:

* 内联样式的缺点: 只对当前元素有效, 导致CSS代码可能出现冗余

内嵌样式表

通过HTML元素的style属性来设置CSS样式,语法如下:

示例代码:

优点: 相对于内联样式

*通过CSS选择器定位HTML页面中一个或一类元素

缺点:相对于内联样式

* 将CSS代码嵌入到HTML页面中,只能对当前HTML页面有效

* 编码的风格不符合编码原则中的低耦合

* 导致CSS代码可能出现冗余

外联样式

通过HTML元素的<link>元素来设置CSS样式表

1.创建一个CSS文件,用来存储CSS样式内容

2.在HTML页面中通过<link>元素引入外部指定的CSS文件

<link>元素:

* 作用: 用来引入HTML页面外部的资源

属性:

* rel属性: 用来设置外部资源与当前HTML页面的关系

* href属性: 用来设置引入外部资源的路径(相对路径和绝对路径)

语法结构如下:

示例代码:

优点: 相对于内嵌样式表和内联样式

* 将CSS样式与HTML页面进行分离(低耦合)

* 不会出现内嵌样式表或内联样式产生的代码冗余

缺点: 可能对HTML页面的加载造成负担,导致性能下降

下一节更新CSS选择器

CSS 样式表小结

css知识点回顾

1.嵌入css代码的四种方式:

1).内嵌模式:

<a style = \”width:80px;height:90px;\” href = \”http://www.baidu.com/\” target = \”_blank\”>百度</a>

2).内部样式

<style>

a{

width:90px;

height:90px;

}

</style>

3).链接样式

<link rel = \”stylesheet\” href = \”style.css\”/>

4).引入模式

@import

2.四种模式的优先级

内嵌 > 内部样式 > 链接样式 > 引入样式

3.CSS选择器

1).标签选择器

<p>标签选择器</p>

p{

color:red;

background:yellow;

}

2).类选择器

<p class = \”box\”>类选择器</p>

.box{

line-height:90px;

font-size:13px;

}

3).id选择器

<div id = \”title\”>id选择器</div>

#title{

font-size:19px;

border:1px solid red;

}

4).通用选择器

<p>测试通用选择器</p>

<a href = \”#\”>测试通用选择器</a>

*{

background:red;

border:3px solid black;

}

4.盒子模型

1).border 边框

2).margin 外边距

3).padding 内边距

5.块级元素和内联元素

1).块级元素

说明:一般用作其他元素的容器,可以容纳内联元素和其他块级元素,块级元素排斥其他元素与其在同一行,宽度width

和height高度其作用.

常见的块级元素:div p

2).内联元素

说明:内联元素只能容纳文本或其他内联元素,它允许其他内联元素与其位于同一行,其宽度width 和 高度height

不起作用,常用的内联元素:a

3).display 属性的使用

display:inline/block/inline-block

6.标签的样式重置

1).在IE-6,7中,标签的样式存在一定的margin,padding数值,造成兼容性的问题,在css中,需要首先清理标签的默认样式

即:body,div{margin:0;pading:0;}

2).*{margin:0;padding:0;}

这行代码是比较省事的写法,默认清楚所有标签的样式;但是,这样并不是合理的,合理的写法是用到哪一个带有默认样式的

标签,就把哪一个清理样式;

3).复合标签的使用:

例如:margin:20px 0 0 20px;

详细解析之后就是如下两个样式:

margin-top:20px;

margin-right:0px;

margin-bottom:0px;

margin-left:20px;

类似的标签还有很多:border background ….等等

7.浮动和定位

1).浮动

浮动在IE-6 下面会出现一个双边距的bug,产生这个bug的原因要有三方面才会出现:

1).要有浮动

2).要有margin值,即(magin-left)

当然,解决的办法你也很简单,设置后面的块元素属性:display:inline;

2).清除浮动

属性:clear:both;

3).position 定位

1).如果页面中没有position ,那么是否有position定位呢,答案是有的,默认是static

2).position 的属性值:absolute ,relative,fixed ,static(默认)

3).position:absolute; 绝对定位 相对于浏览器的top,left,right,bottom来定位的.

4).position:relative; 相对定位 内部子标签相对于父标签的相对定位.

5).小技巧总结:

如果用position来定位页面,父级元素的position属性设置为:relative,子元素的position的属性设置为

absolute,如果设置成relative,则需要计算padding值.

8.开发前端页面的小技巧

1).加载背景图片的时候,先加载一个背景颜色或者小图(平铺),依此来提高用户的体验.

9.css精灵

1).适合一些数量较少的图片,通过图片的位置移动,达到加载图片的效果.

2).减少了下载图片的次数,可以加快网页的访问.

10.text-indent:2em

1).首行缩进

2).em 相对单位.

干货!免费领取Adobe高级讲师前端教程

点我领取

↓↓↓

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。