CSS 3 现状

    兼容性差,需添加私有前缀/移动端优于PC端/不断改进中/渐进增强原则/考虑用户群体/遵照产品的方案 ;

    CSS3手册 需要阅读其--阅读及使用指引

[]表示全部的可选项

|| 或者

| 表示 多选一

? 表示 0个或1个

* 表示 0个或多个

{}表示范围  {A}代表出现A次 ,{A,B}代表出现A次以上B次以下 ,B可以省略,{A,} 代表至少出现A次,无上限

# 出现1次以上,以逗号隔开,可以选择后面跟大括号的方式精确表示重复次数:<length>#{1,4}.

!代表出现产生一个值,即使组内的值都可以省略,但至少有一个值不能呗省略:[A?B?C?]!

属性选择器

  标签选择器/类名选择器/id选择器/后代选择器/标签指定(交集)选择器/并集选择器/子代选择器/通配符

    div+p:选择div后第一个p

    div~p:选择div后所有p

  具体有以下5种形式:

    E[attr] 表示存在attr属性即可:   div[class]

    E[attr=val] 表示属性值完全等于val: div[class=mydemo] ;

    E[attr*=val]  表示的属性值里包含val字符并且在“任意”位置 ;div[class*=mydemo]

    E[attr^=val] 表示的属性值里包含val字符并且在“起始”位置 ; div[class^=mydemo]

    E[attr$=val]  表示的属性值里包含val字符并且在“结束”位置 ;div[class$=mydemo]

伪类选择器:

  :link. 正常状态

  :viaited 已经问过的链接

  :hover 鼠标经过

  :action  点击

  CSS3 新增其他的伪类选择器

结构伪类:以某元素相对于其父元素或兄弟元素的位置来获取元素

    E:first-child 第一个子元素

     E:last-child 最后一个子元素

     E:nth-child(n) 第n个子元素。计算方法是E元素的全部兄弟元素;

       div>ul>li:nth-child(3){.  color:deeppink;  }   第三个元素

     E:nth-last-child(n) 同E:nth-child(n)相似,只是。倒着计算     n<=0 的时候,选取无效

li:nth-child(2n-1){ color:red ;}.   //选择li父盒子中所有的奇数li
li:nth-child(odd){ color:blue;} //奇数
li:nth-child(-1n+5 ) { color:yellow; } // 前面五个
li:nth-last-child(-1n+5 ) { color:green; } // 倒数的五个
li:nth-child ( 2n ) { color:pink } // 偶数
li:nth-child (even) { color:black } // 偶数

E:empty  选中没有任何子节点的E元素;没有任何元素的子节点,包括空格。

E:target. 目标伪类,配合锚点进行使用,处于当前锚点的元素会被选中/ 图片切换

        <li><a href="#title1"> CSS(层叠样式表)</a></li>  

         <h2 id="title">CSS (层叠样式表)</h2>

          h2:target { color:red; }

伪元素选择器

  伪元素E:befor{ }在之前添加 \ E::after{ } 在之后添加 \是一个行内元素,需要转换成块元素

  E::first-letter {}文本的第一个字母或字:首字下沉...

  E::first-line {} 文本第一行:文本第一行 高亮...

  E::selection {} 可改变选中文本的样式;

  E:after 伪类,在新版本会自动被识为 E::after 目的:做兼容处理

颜色

  opcity属性会被子代继承,无法更改子代的属性

  transparent 完全透明,无法修改属性值

  RGBA模式:红绿蓝 alpha

  HSLA模式: H色相、色调。 0-360(红橙黄绿青蓝紫)

        S:饱和度     0-100%

        L:明度、亮度  0-100%

        A: 透明度。 0-1

有颜色的地方都可以用半透明

文本shadow阴影:

  text-shadow. 可分别设置偏移量、模糊度、颜色(可设透明度)

    text-shadow: 水平距离 垂直距离 模糊程度 颜色

    水平偏移量 :正值向右 负值向左

    垂直偏移量 :正值向下 负值向上

    模糊度不能是负值/值越大越模糊。左下为正,右上为负。同一个文本可以有多个阴影

  

ul>li:nth-child(1) { text-shadow:-5px -5px #ccc;}
ul>li:nth-child(2) { text-shadow:-5px -5px #ccc;}
ul>li:nth-child(3) { text-shadow: 5px 5px 2px #ccc ,-5px -5px 2px #ccc;}

CSS3 中可以通过box-sizing来指定盒模型,即可指定为content-box、border-box

 传统盒子模型:

    宽度=padding+border+width/内容区域大小不变/总体大小变化

CSS3盒子模型:

    box-sizing: content-box/padding-box/border-box

    设置谁 ,谁不变

    content-box:内容盒子,外加盒子,加大边距和边框会加大总体大小,内容区域大小不变

    padding-box:内边距盒子

    border-box:边框盒子,内减盒子。加内边距和边框只会减少内容的大小

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>‘
<style>
.items{
width: 1100px;
margin: 100px auto;
} .itme{
width: 316px;
height: 170px;
float: left;
margin-right:20px;
box-sizing: border-box;
} .itme:hover{
border: 5px solid #666;
} img{
width: 100%;
height: 100%;
}
</style>
</head>
<body>
<div class="items">
<div class="itme">
<img src="data:images/1.jpg" alt=""/>
</div>
<div class="itme">
<img src="data:images/2.jpg" alt=""/>
</div>
<div class="itme">
<img src="data:images/3.jpg" alt=""/>
</div>
</div>
</body>
</html>

border-box

  私有化前缀:

    解决兼容性问题

    -webkit-  谷歌、苹果浏览器内核

    -moz- 火狐浏览器内核

    -ms- IE浏览器内核 

    -o-  欧朋浏览器内核    

   <style>
.box{
width: 1100px;
height: 200px;
border: 1px solid #000;
margin:100px auto; /* 背景渐变*/
/*
-webkit-: chrome safari 谷歌(webkit内核的) 苹果
-moz-:火狐
-ms-:ie
-o-: 欧朋
*/ background: -ms-linear-gradient(left,red 0%, green 100%);
background: -webkit-linear-gradient(left,red 0%, yellow 50%, green 100%);
background: -moz-linear-gradient(left,red 0%, green 100%);
background: -o-linear-gradient(left,red 0%, green 100%);
background: linear-gradient(left,red 0%, green 100%);
}
</style>
</head>
<body>
<div class="box"></div>
</body>

CSS3 01. CSS3现状、属性选择器、伪类选择器、结构伪类、伪元素选择器、颜色、文本阴影shadow、盒子模型、私有化前缀的更多相关文章

  1. 深入学习jQuery选择器系列第二篇——过滤选择器之子元素选择器

    × 目录 [1]通用形式 [2]反向形式 [3]首尾元素 [4]唯一元素 前面的话 在上一篇中已经介绍过基础选择器和层级选择器,本文开始介绍过滤选择器.过滤选择器是jQuery选择器中最为庞大也是最为 ...

  2. python 之 前端开发(基本选择器、组合选择器、 交集与并集选择器、序列选择器、属性选择器、伪类选择器、伪元素选择器)

    11.3 css 11.31 基本选择器 11.311 id选择器 根据指定的id名称,在当前界面中找到对应的唯一一个的标签,然后设置属性 <!DOCTYPE html> <html ...

  3. CSS自学笔记(10):CSS3盒子模型

    CSS3为CSS技术的升级版本.最新版本. 就CSS而言,它是一个模块,是一个庞大而又复杂的模块,但是在CSS3中,将这一个庞大的模块分解为一个个容易理解的同时又很精简的小模块,同时CSS3中又添加了 ...

  4. CSS3:box-sizing:不再为盒子模型而烦恼

    题外话: W3C奉行的标准,就是content-box,就是须要计算边框,填充还有内容的;可是就我个人而言, 比較喜欢的是传统IE6时候的怪异模式,不用考虑容器是否会被撑开(打乱布局); 盒子模型差异 ...

  5. [CSS属性设置,盒子模型,网页布局]

    [CSS属性设置,盒子模型,网页布局] CSS属性设置 1. 宽和高 width:属性可以为元素设置宽度. height:属性可以为元素设置高度. 块级标签的宽度不修改的情况下默认占浏览器的一整行,块 ...

  6. css选择器(1)——元素选择器、类名和id选择器

    css的主要优点之一就是它能很容易地向所有同类型的元素应用一组样式.当然它是通过选择器来实现这一点的. 基本规则结构: 语法= 选择器 +声明块 1.元素选择器——直接使用html元素名,指向文档元素 ...

  7. C#基础知识系列三(类和结构体、String和StringBuilder、equals和==)

    前言 这一节主要来了解一下类和结构体之间的异同点.以及针对String和StringBuilder的用法.equals和==,其实可以看出很多地方都用到了上一节的值类型和引用类型.堆栈和装箱拆箱操作吧 ...

  8. Swift: 类与结构体

    对比类与结构体 类与结构体有许多的相同点,它们都可以: 定义属性来存储值: 定义方法来提供功能: 定义下标操作: 定义初始化函数: 扩展它的默认的实现: 遵从协议: 类有一些额外的能力,但是结构体没有 ...

  9. [翻译] 编写高性能 .NET 代码--第五章 通用编码与对象设计 -- 类 vs 结构体

    本章介绍了本书其它部分未涉及到的一些编码和设计原则.包含了一些.NET的应用场景,有些不会造成太大危害,有些则会造成明显的问题.剩下的则根据你的使用方法会产生不同的效果.如果要对本章节出现的原则做一个 ...

随机推荐

  1. 解决报错:类型“System.Object”在未被引用的程序集中定义。必须添加对程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用

    Razor视图引擎中,使用部分视图编译报错 类型“System.Object”在未被引用的程序集中定义.必须添加对程序集“System.Runtime, Version=4.0.0.0, Cultur ...

  2. 客户端埋点实时OLAP指标计算方案

    背景 产品经理想要实时查询一些指标数据,在新版本的APP上线之后,我们APP的一些质量指标,比如课堂连接掉线率,课堂内崩溃率,APP崩溃率等指标,以此来看APP升级之后上课的体验是否有所提升,上课质量 ...

  3. 802.11学习笔记1-WIFI参数含义

    研究下wifi参数的含义 #The word of "Default" must not be removed Default CountryRegion= CountryRegi ...

  4. 转载 | CSS图片下面产生间隙的 6种解决方案

    在进行页面的DIV+CSS排版时,遇到IE6(当然有时Firefox下也会偶遇)浏览器中的图片元素img下出现多余空白的问题绝对是常见的对於 该问题的解决方法也是「见机行事」,根据原因的不同要用不同的 ...

  5. QT动画时间轴控制 QTimeLine

    QTimeLine类提供用于控制动画的时间轴 比如控制进度条的增长,图片,窗口的旋转,平移等等 QTimeLine有一个frameChanged(int)信号 当调用QTimeLine::start( ...

  6. ReentrantLock源码分析--jdk1.8

    JDK1.8 ArrayList源码分析--jdk1.8LinkedList源码分析--jdk1.8HashMap源码分析--jdk1.8AQS源码分析--jdk1.8ReentrantLock源码分 ...

  7. 「雕爷学编程」Arduino动手做(10)——敲击传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  8. Go语言-基本的http请求操作

    Go发起GET请求 基本的GET请求 //基本的GET请求 package main import ( "fmt" "io/ioutil" "net/ ...

  9. VR、AR、MR、CR 与 AI与SaaS、CRM、MRP与B2B、B2C、C2C、O2O、P2P

    一.VR.AR.MR.CR  VR ( Virtual Reality ),虚拟现实 AR(Augmented Reality),增强现实 MR(Mix Reality),混合现实 CR(Cinema ...

  10. 多渠道推广场景下,如何实现 App 用户增长的精准归因?

    为了实现用户的快速增长,以推广 App 为目标的线上广告投放是很多平台获取新用户的重要方式.随道移动互联网的发展,现在 App 推广的渠道越来越丰富,除了 WAP 站点.第三方 App 之外,HTML ...