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. Http/Https抓包工具Charles最新版破解教程(Windows|Mac)

    Charles介绍 Charles是一款强大的http/https抓包工具,可以抓取各种数据请求,查看请求的头信息,请求信息,返回信息等.本文主要介绍Charles的破解过程,包括Windows平台和 ...

  2. MariaDB 存储过程与函数(10)

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...

  3. SpringMvc 启动原理源码分析

    了解一个项目启动如何实现是了解一个框架底层实现的一个必不可少的环节.从使用步骤来看,我们一般是引入包之后,配置web.xml文件.官方文档示例的配置如下: <web-app> <se ...

  4. sublime text3 -- JavaScript Completions

    今天在使用sublime text3时,它 智能 的自动安装了一个插件,JavaScript Completions.一般插件都是为了提高开发效率的,于是百度搜了一下用法. 相关说明很少,packag ...

  5. Python之tkinter中的askyescancel窗口返回值

    if messagebox.askokcancel(title="确认取消",message="您确认注册该账号吗?"): messagebox.showinf ...

  6. js变量提升

    JavaScript的函数定义有个特点,它会先扫描整个函数体的语句,把所有申明的变量“提升”到函数顶部: 'use strict'; function foo() { var x = 'Hello, ...

  7. MyEclipse 编写 JSP 代码时很卡的解决办法

    在网上看到很多方法,都是尝试过,个人感觉都没有说到重点,所以收效甚微. 后来自己总结了一下: 我们都是习惯在MyEclipse 工具,双击jsp 文件打开进行编辑.这时,工具会打开窗口的 Previe ...

  8. Centos 7 快速搭建IOS可用IPsec

    安装 strongswan yum install -y http://ftp.nluug.nl/pub/os/Linux/distr/fedora-epel/7/x86_64/Packages/e/ ...

  9. (转)Linux top命令的用法详细详解

    原文:https://yq.aliyun.com/articles/399004?spm=a2c4e.11153940.blogcont399002.9.3a19f00aHOA3SH# 摘要: 首先介 ...

  10. MyCat不支持的SQL语句

    SELECT: Ø 跨分片(实体库)的交叉查询 Ø 跨节点的联合查询 (如用户库的表和平台库的表做联合查询) INSERT: Ø 插入的字段不包含分片字段 (如插入tbl_user_base_info ...