1.CSS规则由两部分构成,即选择器和声明器

  声明必须放在{}中并且声明可以是一条或者多条

  每条声明由一个属性和值构成,属性和值用冒号分开,每条语句用英文冒号分开

  注意:

    css的最后一条声明,用以结束的“;”可写可不写,但是基于W3c标准规范思考建议最后一条声明的结束“;”都要写上

2.行内样式

  直接在style属性设置css样式style属性提供了一种改变所有的HTML元素样式的通用方法

  语法:

<h1 style="color:red">style属性的应用</h1>

<p style="font-size:14px;color:green;">直接在HTML标签设置样式</p>

  

3.内部样式

   把css代码写在<head>的<style>标签中与HTMl内部位于同一个HTML文件中,这就是内部样式

4.外部样式

  就是把css代码保存为一个单独样式表文件,文件扩展名位.class在页面引用外部样式即可

  HTML文件外部样式有两种方式分别是链接式和导入式

  1)链接式:

<head>

<link href="...css"rel="stylesheet"type="text/css"

</head>

<!--

rel="stylesheet"是指在本页面使用这个外部样式

type=text/css是指文件的类型是样式表文本

href="...css"文件所在位置

-->

2)导入外部样式表

   在HTML网页使用@import导入外部样式导入样式必须放在<style>标签中而<style>标签必须放在<head>标签中

<head>

<style>

@import url(".....css")

</style>

</head>

<!--其中@import导入文件,前面必须放一个符号,url(".....css")表示样式文件位置-->

3)链接式和导入式区别

  1.<link/>标签属于XHTML范畴中而@import是css2.1中特有的

   2.使用,<link/>的链接css客户端浏览网页时先将css网页加载到网页中,在进行编译显示,所以这种情况下显示出的网页与用户预期的一样即使网速再慢也是一样的效果

  3.使用@import导入css文件客户端在浏览网页时先将HTML结构呈现出来再把外部css文件加载到网页中当然最终与<link/>链接效果一样只是当网速较慢时会先显示没有css统一布局的HTML网页,这样会给用户不好的感觉这也是目前大多数网站用连接外部样式表的主要原因

5.样式的优先级:<就近原则>

行内元素>内部样式表>外部样式表

注:代码是逐条执行,如果内部样式比外部样式先声明,则外部样式具有优先级

6.css3的选择器

  标签选择器 类选择器 和id选择器

1)类选择器

类选择器即<即标签名 class"类名称">标签内容</标签名>

.green{

font-size:20px;

color:red;

}

<p class="green">hhhh</p>

2)id选择器

#green{

font-size:20px;

color:red;

}

<p id="green">hhhh</p>

注意:id选择器只能使用一次,也就是说在同一页面同一个id属性只能设置一次;而类选择器可以在页面使用多次

3)选择器的优先级

  id选择器>class类选择器>标签选择器

7.css3高级选择器

1. 层次选择器

  1)E F 后代选择器 选择匹配的F元素,且匹配的F元素被包含在匹配的E元素中

  2) E>F 子选择器 选择匹配的F元素,且匹配的F元素是匹配E元素的子元素

  3) E+F 相邻兄弟选择器 选择匹配的F元素,且匹配的F元素仅位于匹配的E元素后面

  4)E~F 通用兄弟选择器 选择匹配的F元素,且匹配的E元素后所有匹配的F元素

注:1)通用兄弟选择器选中的是E元素相邻的后面兄弟元素下,是一个或多个元素;

  2)相邻兄弟选中的是与E元素仅挨的F元素,其中选中的仅是一个元素

8.结构伪类选择器

  1)E:first-child 作为父元素的第一个子元素的元素E

   2) E:last-child 作为父元素的最后一个子元素的元素E

  3)E F:nth-child(n) 选择父级元素E 的第n个元素F(n可以是1/2/3)关键字为even odd

  4)E:first-of-type 选择父级元素具有指定类型的第一个E元素

  5)E:last-of-type 选择父级元素具有指定类型的最后一个E元素

  6)E F:nth-of-type(n) 选择父元素内具有指定类型的第n个F元素

注:E F:nth-child(n)和 E F:nth-of-type(n)使用时记住以下关键点:

     1)E F:nth-child(n)在父级里从第一个元素开始查找,不分类型

      2)E F:nth-of-type(n)在父级里先看类型再看位置

9.属性选择器

  1)E[attr] 相匹配具有属性attr的E元素

  2)E[attr=val] 选择匹配具有属性attr的E元素 并且属性值位val(其中Val区分大小写)

  3)E[attr^=val] 选择匹配元素E,且E元素定义了属性attr,其中属性值以val开头的任意字符串

   4)E[attr$=val] 选择匹配元素E,且E元素定义了属性attr,其中属性值以val结尾的任意字符串

  5)E[attr*=val] 选择匹配元素E,且E元素定义了属性attr,其中包含了"val"话句话说,字符串val与属性值中的任意位置相匹配

第四章:初识CSS3的更多相关文章

  1. 第四章初始CSS3预习笔记

    第四章 初始CSS3预习笔记 一: 1: 什么是CSS? 全称是层叠样式表;/通常又称为风格样式表,.他是用来进行网页风格设计的; 2:CSS的优势: 1>内容以表现分离,即使用u前面学习的HT ...

  2. 学习笔记 第十四章 使用CSS3动画

    第14章   使用CSS3动画 [学习重点] 设计2D动画 设计3D动画 设计过渡动画 设计帧动画 能够使用CSS3动画功能设计页面特效样式 14.1  设计2D动画 CSS2D Transform表 ...

  3. 第1章 初识CSS3

    什么是CSS3? CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大的新功能. 目前主流浏览器chrome.safari.firefox.opera.甚至360都已经支 ...

  4. CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章

    第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...

  5. CSS3秘笈:第四章

    第四章  继承 1.继承:应用在一个标签上的CSS样式被传到其内嵌标签上的过程. 2.继承的局限性: (1)有些属性不会被继承,如:CSS. (2)以下情况不会严格执行继承: ·影响网页元素位置的属性 ...

  6. jQuery系列 第四章 jQuery框架的选择器

    第四章 jQuery框架的选择器 4.1 jQuery选择器说明 jQuery 最核心的组成部分就是选择器引擎.它完全继承了 CSS 的风格,可以对 DOM 元 素的标签名.属性名.状态等进行快速准确 ...

  7. Python--Redis实战:第四章:数据安全与性能保障:第7节:非事务型流水线

    之前章节首次介绍multi和exec的时候讨论过它们的”事务“性质:被multi和exec包裹的命令在执行时不会被其他客户端打扰.而使用事务的其中一个好处就是底层的客户端会通过使用流水线来提高事务执行 ...

  8. 第9章 初识STM32固件库

    第9章     初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fire ...

  9. 第9章 初识STM32固件库—零死角玩转STM32-F429系列

    第9章     初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fire ...

  10. 【CSS3】 - 初识CSS3

    .navdemo{ width:560px; height: 50px; font:bold 0/50px Arial; text-align:center; margin:40px auto 0; ...

随机推荐

  1. Java知多少(90)菜单

    有两种类型的菜单:下拉式菜单和弹出式菜单.本章只讨论下拉式菜单编程方法.菜单与JComboBox和JCheckBox不同,它们在界面中是一直可见的.菜单与JComboBox的相同之处是每次只可选择一个 ...

  2. Ruby学习小记

    ruby安装 方法一:使用apt-get安装 可以直接使用两个命令完成Ruby的安装. # sudo apt-get update # sudo apt-get install ruby 或者 # s ...

  3. yizhihongqiang

    最新网址:https://www.     hongxingwangzhi           .com/

  4. 在VSCode中成功安装Go相关插件问题:tools failed to install.

    一.介绍 目的:本文将主要介绍在windows使用VSCode配置Go语言环境 软件:VSCode 二.安装出现的问题 完整信息如下 Installing tools at D:\GoPath\bin ...

  5. pca , nmds , pcoa 图添加分组的椭圆

    对于pca , nmds, pcoa 这些排序分析来说,我们可以从图中看出样本的排列规则,比如分成了几组. 为例样本分组更加的直观,我们可以根据实验设计时的样本分组情况,对属于同一个group的样本添 ...

  6. oracle学习笔记1(环境搭建)

    学习的开始先剧透一下,本人有点笨,本来想用oracle vbox,装个red hat+oracle,但是虚拟机一直报错,0x00000000内存不能written.所以便想到其他的办法,刚好接触了go ...

  7. file类型input框设置上传相同文件,并都可以触发change事件。

    在使用file类型input框是,删除了第一次上传到文件,再次上传相同文件,无法触发change事件,所以在删除的js上添加如下js代码: document.getElementById('fileU ...

  8. 浅谈JAVA中HashMap、ArrayList、StringBuilder等的扩容机制

    JAVA中的部分需要扩容的内容总结如下:第一部分: HashMap<String, String> hmap=new HashMap<>(); HashSet<Strin ...

  9. [原]Jenkins(九)---jenkins分别发布多个项目到多个远程主机

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...

  10. Python中StringIO和BytesIO

    介绍一下Python在内存中读写数据,用到的模块是StringIO和BytesIO StringIO >>> from io import StringIO >>> ...