1、CSS定义

CSS 指层叠样式表 (Cascading Style Sheets),是一种样式表语言,用来描述 HTML 或 XML(包括如 SVG、XHTML 之类的 XML 分支语言)文档的呈现。CSS 描述了在屏幕、纸质、音频等其它媒体上的元素应该如何被渲染的问题。

2、为何使用CSS

网页是由HTML标签组成的,那么这些标签会根据浏览器的默认方式进行排版与样式的渲染,如果想要更改这些默认的样式,推荐用CSS,因为这样不仅实现了内容与表现分离的问题,而且更易于维护。

3、CSS语法

CSS 语法由两个主要的部分构成:选择器,以及一条或多条声明。

selector {declaration1; declaration2; ... declarationN }

其中每条声明由一个属性和一个值组成。

selector {property: value}

下面这个例子中,h1 是选择器,color 和 font-size 是属性,red 和 14px 是值。

h1 {color:red; font-size:14px;}

这张图形象的表示了上面代码的结构

CSS对空格和大小写都不敏感,也就是说大小写均可,是否包含空格不会影响 CSS 在浏览器中的工作效果

/* 属性为大小,值为小写,并且冒号后面有多个空格 */
.box {
COLOR: blue;
} /* 建议写法 */
.box {
color: blue;
}

上面的两种写法在浏览器中显示的效果是一样的。

4、CSS注释

与HTML语言一样,CSS也同样存在着注释

4.1、单行注释

/* 这是表示单行的注释 */

注意:注释不能嵌套,例如下面的写法都是错误的

/* 这是表示*/单行的注释 */
/* 这是表示单行的注释 /* */ */

4.2、多行注释

/*
* 这是表示多行的注释
* 注释内容1
* 注释内容2
*/

5、引入方式

5.1、行内式

行内式是在标签的style属性中设定CSS样式。

<div style="..."></div>

5.2、嵌入式

嵌入式是将CSS样式集中写在网页的<head>标签的<style></style>标签对中

<head>
<meta charset="UTF-8">
<title>嵌入式</title>
...
<style type="text/css">
...在这里写CSS样式
</style>
</head>

5.3、外联式

将CSS样式写在一个独立的文件中,然后通过link标签引入CSS样式文件

<head>
<meta charset="UTF-8">
<title>外联式</title>
...
<link rel="stylesheet" href="outer.css" />
</head>

type属性:只有一个选项,“text/css",指定当前为css文本文件
rel:指定当前HTML文件与CSS文件的关系是样式表
href:指定外联样式表的路径

5.4、导入式(不推荐使用)

将CSS样式写在一个独立的文件中,然后通过@import标签引入CSS样式文件

<head>
<meta charset="UTF-8">
<title>导入式</title> <style type="text/css">
@import url(css/outer.css);
/*其他css样式*/
</style>
</head>

注意:导入样式的书写必须在所有的css规则书写之前,否则失效,导入外部样式表与链入外部样式表类似,相当于在文件中直接使用,这会占用html文件的空间,故不推荐使用该方法,而且有些浏览器会最后加载导入的样式,导致刚开始打开网页的时候,没有任何的样式,到加载完毕之后才会导入样式,用户体验不好

导入外部样式表的另一种用途是,如果一个文件需要引用很多外部样式表,可以把这些要引用的样式表放在一个文件中,然后需要引用的文件则只需引用一个文件即可,如
import.css内容如下
@import “a.css”
@import “b.css”
@import “c.css”

除了以上4种导入的样式之外,这里需要知道所有的标签都有一个默认样式,我们称为浏览器样式,或者默认样式。也就是不加任何样式,HTML标签在浏览器中的显示的样子。

6、建议与注意点

一些建议

  • 为了以后的对代码的优化,建议在每个属性值的后面加一个分号,如:p { font-style: normal; }
  • 某些html属性有自定默认的CSS属性值,如:<h1></h1>
  • 为了兼容浏览器,建议将所有的元素的CSS属性值重置,如:<h1></h1>———>h1 { font-size: 12px; }
  • 如果想要用某种特殊字体的话,又担心用户的上面没有该字体,则可以用图片代替
  • 中英文字体的设置顺序,先设置英文的字体,再设置中文的字体,如:p { "Courier New", "宋体" },建议字体用双引号

样式应用顺序

  • 行内样式优先级最高
  • 针对相同的样式属性,不同的样式属性将以合并的方式呈现
  • 相同样式并且相同属性,呈现的方式由在<head>中的顺序决定,后面会覆盖前面定义过的属性
  • !important  指定样式规则应用最优先

CSS学习笔记01 CSS简介的更多相关文章

  1. HTML+CSS学习笔记 (7) - CSS样式基本知识

    HTML+CSS学习笔记 (7) - CSS样式基本知识 内联式css样式,直接写在现有的HTML标签中 CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式.嵌 ...

  2. HTML+CSS学习笔记 (12) - CSS布局模型

    标签:HTML+CSS css布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是 ...

  3. CSS学习笔记02 CSS选择器

    1.通配符选择器 通配符选择器用“*"号表示,是所有选择器中作用范围最广的,能匹配页面中所有的元素 /*设置当前页面中所有标签的颜色为红色*/ * { color: red; } 2.标签选 ...

  4. DIV+CSS学习笔记(CSS)

    css基础知识: css样式表的定义 css:(Cascading Style Sheets)层叠样式表: 分类及位置:内部样式-head区域style标签里面 外部样式-link调用 内联样式-标签 ...

  5. 总结了一下css的部分基础知识点。---css学习笔记01

    一. css基础 1. 什么是css 层叠样式表:层叠 2. css的三种使用方式 style 属性 --> <div style="css属性值"></d ...

  6. 【CSS学习笔记】CSS选择器

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  7. CSS学习笔记--Div+Css布局(div+span以及盒模型)

    1.DIV与SPAN 1.1简介 1.DIV和SPAN在整个HTML标记中,没有任何意义,他们的存在就是为了应用CSS样式 2.DIV和span的区别在与,span是内联元素,div是块级元素 内联元 ...

  8. Head First Html and CSS学习笔记之CSS

    第七章 CSS入门 元素的许多属性都可以设置样式,太多了,记不住,可以参考<CSS Pocket Reference>. 外部样式表,<link type = "text/ ...

  9. HTML+CSS学习笔记 (13) - CSS代码缩写,占用更少的带宽

    标签:HTML+CSS 盒模型代码简写 还记得在讲盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左.具体应用在m ...

随机推荐

  1. Python 学习第三部分函数——第一章函数基础

    函数是python 为了代码最大程度的重用和最小代码冗余而提供的最基本的程序结构.使用它我们可以将复杂的系统分解为可管理的部件. 函数相关语句 def...          创建一个对象并将其赋值给 ...

  2. Win7的“以管理员身份运行”

    如果HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA被设置为0,则"以管理员身份运行" ...

  3. 阿里云oss服务通用类

    在webconfig中配置信息 <?xml version="1.0" encoding="utf-8"?><configuration> ...

  4. Lerning Entity Framework 6 ------ Introduction to TPH

    Sometimes, you have created two models. They have the same parent class like this: public class Pers ...

  5. Python 一篇学会多线程

    多线程和多进程是什么自行google补脑,廖雪峰官网也有,但是不够简洁,有点晕,所以就整个简单的范例. 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用 ...

  6. C#导出Excel文件Firefox中文件名乱码

    首先说明下:我的解决方法不一定适用于其他遇到该问题的人,因为情况多种多样,适合我的方法不一定适合别人,就像我在遇到问题时查到别人的解决方案放到我的代码里却不管用,所以这个方法仅供参考 这两天做了一个导 ...

  7. Windows Phone开发手记-WinRT下分组拼音的实现

    Windows Phone版本号自升入8.1以来,开发者就多了一个选项,开发基于WinRT架构的WP或者Universal Windows App.然而开发框架转为WinRT后,很多原有的WP8基于S ...

  8. python并发编程之进程池,线程池concurrent.futures

    进程池与线程池 在刚开始学多进程或多线程时,我们迫不及待地基于多进程或多线程实现并发的套接字通信,然而这种实现方式的致命缺陷是:服务的开启的进程数或线程数都会随着并发的客户端数目地增多而增多, 这会对 ...

  9. 10-05 Java 内部类概述和讲解

    内部类的概述 /* 内部类概述: 把类定义在其他类的内部,这个类就被称为内部类. 举例:在类A中定义了一个类B,类B就是内部类. 内部的访问特点: A:内部类可以直接访问外部类的成员,包括私有. B: ...

  10. C#:自定义函数

    将数组转成字符串 /// <summary> /// 将数组转成字符串 /// </summary> /// <param name="glue"&g ...