CSS3的基础用法

CSS3的现状:1、浏览器支持程度差,需要添加私有前缀  2、移动端支持优于PC端  3、不断改进中  4、应用相对广泛

在CSS3中增加新增了许多灵活查找元素的方法,极大的提高了查找元素的效率和精准度。CSS3选择器与jQuery中所提供的绝大部分选择器兼容。

一.属性选择器:

ele[attr] 元素包含该attr属性就可以捕获到 ([]前面的ele可以不写,如果不写的话按通配*[attr])
ele[attr=value] 元素包含该attr属性,且该attr的value有且只有一个并且完全相等的时候可以捕获。
ele[attr~=value] 元素包含该attr属性,并且该attr的值可以以空格分隔,只要其中一个属性全等与value就可以捕获
ele[attr^=value] 元素包含该attr属性,并且该attr的值中以value开头就可以(开头如果有空格的话空格也会占位)
ele[attr$=value] 元素包含该attr属性,并且该attr的值中以value结尾就可以(结尾如果有空格的话空格也会占位)
ele[attr*=value] 元素包含该attr属性,并且该attr的值中包含value就可以(中间如果有空格的话空格也会占位)
ele[attr|=value] 元素包含该attr属性,并且该attr的值中以value开头或者以value-开头都可以捕获到

二.伪类选择器:

  除了以前的:link、:active、:visited、:hover,CSS3又新增了其它的伪类选择器

  所有的伪类:前面的ele也可以不写,不写的话按照通配
  ele:first-child 该ele元素的兄弟级元素中的第一个
  ele:first-of-type 该ele元素的兄弟元素中同类型的第一个

  ele:last-child 该ele元素的兄弟级元素中的最后一个
  ele:last-of-type 该ele元素的兄弟元素中同类型的最后一个

  ele:nth-child(xn+y) 该ele元素的兄弟级元素中的第xn+y个
  n的取值范围是0到正无穷 0 1 2 3 4 5 6 ...
  元素的索引是从1开始的 1 2 3 4 5 6 ...
  x可以是负值
  ele:nth-of-type(xn+y) 该ele元素的兄弟级元素中同类型的第xn+y个
  n的取值范围是0到正无穷 0 1 2 3 4 5 6 ...
  元素的索引是从1开始的 1 2 3 4 5 6 ...
  x可以是负值

  ele:nth-last-child(xn+y) 该ele元素的兄弟级元素中的倒数第xn+y个
  ele:nth-last-of-type(xn+y) 该ele元素的兄弟级元素中同类型的倒数第xn+y个

  ele:empty 该元素下没有任何元素(可以有注释,空格是站位的)
  ele:checked 单选框和复选框在选中状态下会被捕获
  ele:disabled 禁用状态下的按钮
  ele:enabled 不禁用状态下的按钮

三.目标伪类:

  ele:target 结合锚点进行使用,处于当前锚点的元素会被选中;

四.伪元素选择器:    

    ele::first-letter 文本的第一个单词或字
    ele::first-line 文本第一行
    ele::selection 被选中区块的样式(只能添加背景颜色,字体颜色,字体阴影)
    ele::placeholder 占位符样式

    重点:  ele::before、ele::after  是一个行内元素,需要转换成块元素 必须设置 content属性.

ele:after、ele:before 在旧版本里是伪元素,CSS3的规范里“:”用来表示伪类,“::”用来表示伪元素,但是在高版本浏览器下ele:after、ele:before会被自动识别为ele::after、

ele::before,这样做的目的是用来做兼容处理。

":" 与 "::" 区别在于区分伪类和伪元素.

五.颜色 :  

     新增了RGBA、HSLA模式,其中的A 表示透明度通道,即可以设置颜色值的透明度,相较opacity,它们不具有继承性,即不会影响子元素的透明度。

     rgba() r,g,b的取值范围在0-255  a表示透明度取值范围在0-1.

     hsla()  H 色调 取值范围0~360,0/360表示红色、120表示绿色、240表示蓝色  h: 0-255  s:0-100%  l:0-100%;

       opacity 设置的透明度会被子级盒子继承.

       rgba 或者 hsla 设置的透明度不会被继承.

     transparent 不能进行调整,要不就全透明,要不就全不透明.

六.文字阴影:

     text-shadow,可分别设置偏移量、模糊度、颜色(可设透明度)。阴影的大小默认跟文字一样大.

     如果要设置多个 直接使用 逗号分隔 继续往后写即可.

     1、水平偏移量  X轴 正值向右 负值向左;

     2、垂直偏移量 Y轴 正值向下 负值向上;

     3、模糊度是不能为负值;

     可设置四个参数:第一个参数 X方向的移动 正值是X轴正方向
     第二个参数 Y方向的移动 正值是Y轴正方向
     第三个参数 阴影模糊度 数值不能为负值 越大越模糊
     第四个参数 阴影的颜色
     四个参数为一套,一套可以出一个阴影,用“,”分割可以出多套阴影

七.边框圆角:

     border-radius. 以0px位例子. border-radius:0px 0px 0px 0px.可设置4个参数 分别表示左上、右上、左下、右下.

                   border-radius:0px 0px 0px.可设置3个参数 分别表示左上、右上、左下右下

                   border-radius:0px 0px.可设置2个参数 分别表示左上右上、左下右下.

                   border-radius:0px 可设置1个参数 表示左上右上左下右下

八.盒子阴影 box-shadow:

     box-shadow 盒子阴影

     第零个参数 inset 向内扩散的意思(选填)

     第一个参数 X方向的移动 正值是X轴正方向
     第二个参数 Y方向的移动 正值是Y轴正方向
     第三个参数 阴影模糊度 数值不能为负值 越大越模糊
     第四个参数 阴影的扩散 数值不能为负值
     第五个参数 阴影的颜色
     一套可以出一个阴影,用“,”分割可以出多套阴影,可以设置多重边框阴影,实现更好的效果,增强立体感.                                                                                           所有的阴影都只是视觉上的效果,不会影响文档流的站位 不会改变盒子大小.

九.盒模型 box-sizing:

     兼容性比较好

     box-sizing 如果不设置 默认的值 就是                                                                                                                                                                    content-box: 优先保证内容的大小 对盒子进行缩放;

     border-box: 让 盒子 优先保证自己所占区域的大小,对内容进行压缩;

     盒子的计算是 内容+padding+border
     box-sizing: content-box; width和height代表的是内容的宽高
     box-sizing: border-box; width和height代表的是盒子的宽高

     如果在实际开发中 需要保证 元素所占的 区域大小 优先级要高于 内容的大小 可以选用该属性

十.背景图片属性:

     1、background-size设置背景图片的尺寸:包含两个属性 cover contain. 也可以使用长度单位或者百分比设置

     cover会自动调整缩放比例,保证图片始终填充满背景区域,如有溢出部分则会被隐藏。

     contain会自动调整缩放比例,保证图片始终完整显示在背景区域。

     可以设置多张背景图片:例 用","号隔开即可

background-image: url(‘images/xxx.jpg‘),url(‘images/xxx.png‘)

     设置多张图片的位置用","号隔开即可 也可以用长度单位

background-position: top left,bottom right;

     复合属性中设置图片大小 注意需要用"/"号分隔

url(‘images/dog.gif‘) no-repeat 115px 70px / 200px 200px

    

    2、background-origin设置背景定位的原点 包含三个属性

      border-box以边框做为参考原点;

      padding-box以内边距做为参考原点;

      content-box以内容区做为参考点;

    3、background-clip设置背景区域裁切 包含三个属性

      border-box裁切边框以内为背景区域;

      padding-box裁切内边距以内为背景区域;

      content-box裁切内容区做为背景区域;

时间: 2024-08-04 20:50:42

CSS3的基础用法的相关文章

css3的基础用法,新手必看哈(还有css3和jquery动画的对比)

第一步: 定义动画,名字可以各种起,就像方法名一样 1. 定义动画,名称为fadeIn @-webkit-keyframes fadeIn { 0% { opacity: 0; /*初始状态 透明度为0*/ } 50% { opacity: 0; /*中间状态 透明度为0*/ } 100% { opacity: 1; /*结尾状态 透明度为1*/ } } 方法里面还有很多写法: 如: /* 定义css方法,名字叫消失 Hides a leaf towards the very end of th

css基础之 font的简写规则 以及 自定义 CSS3 @font-face详细用法

Part 1 font简写 CSS的命名规则是用英文字母 数字 和下划线(一般用小写)来命名.简写css font的好处有三:一是写起来方便(就像键盘快捷键):二是简化代码:三是帮助你熟悉和深刻理解css. 一.字体属性主要包括下面几个 font-family,font-style,font-variant,font-weight,font-size,font font-family(字体族): “Arial”.“Times New Roman”.“宋体”.“黑体”等;font-style(字体

CSS3的基础知识点

面临找工作之际,又将CSS3的基础知识撸了一把,做了相应的笔记,主要是方便自己查阅,参考的是W3C的知识.  1.CSS背景 (1).background-size 属性 background-size 属性规定背景图片的尺寸,同时适用与字体图标方面的适用(主要在移动端用到较多). 在 CSS3 之前,背景图片的尺寸是由图片的实际尺寸决定的.在 CSS3 中,可以规定背景图片的尺寸,这就允许我们在不同的环境中重复使用背景图片. 您能够以像素或百分比规定尺寸.如果以百分比规定尺寸,那么尺寸相对于父

sass基础用法

sass基础用法 SASS是什么 传统的CSS是一种单纯的描述性样式文件,然而SASS可以对CSS进行预编译处理. 在SASS源码中可以使用变量.函数.继承等动态语言的特性,并且可以编译成CSS文件. 安装与使用 安装 由于sass是ruby写的,所以想要使用sass就需要安装ruby环境.然后再使用gem安装sass. 输入下面的命令进行安装sass: gem install sass 可以使用sass -v命令查看sass的版本. 使用 新建一个后缀名为.scss源码文件,就可以编辑sass

游标基础用法

Create PROCEDURE P_InsertSubject@SubjectId intASDECLARE rs CURSOR LOCAL SCROLL FORselect studentid from student where StudentGradu = 1OPEN rsFETCH NEXT FROM rs INTO @tempStudentIDWHILE @@FETCH_STATUS = 0BEGINInsert SelSubject values (@SubjectId,@temp

CSS3的calc()用法简单介绍

CSS3的calc()用法简单介绍:calc是calculate(计算的意思)缩写.从calc()的外表来看,它类似于程序语言中的方法,具有计算功能.确实如此,它可以动态的计算css中一些元素的相关属性值,能够运用简单的"+"."-"."*"."/"四则运算.基本规则如下:(1).可以使用百分比.px.em.rem等单位.(2).可以混合使用各种单位进行计算.下面看几个代码片段: .box{ border:1px solid

Cocos数据篇[3.4](6) ——SQLite3数据库基础用法

[唠叨] 在Cocos2d-x中,简单数据存储,可以使用UserDefault.那么如何存储大量,不规则的数据?我们可以使用 SQLite数据库 存储数据.SQLite 是使用非常广泛的 嵌入式数据库 ,它有小巧 .高效.跨平台.开源免费和易操作的特点.所以大量的被用于手机.PDA.MP3播放器.以及机顶盒设备. SQLite数据库是使用C语言来编写的,因此在Cocos2d-x使用SQLite也是得心应手. 本文介绍一下SQLite3数据库的基础用法:增删改查. PS:另外对于SQLite的可视

sed命令基础用法

    sed(Stream EDitor)简介 sed是一个流编辑器编辑器,本身是一个管道命令,主要以行为单位处理文本文件,可以将数据进行替换.删除.新增.选取等特定工作:sed并不会处理文本文件本身,而是每当处理一个文件时,按顺序逐行读取到模式空间(内存)中,而后在模式空间中完成编辑,把编辑的结果输出到屏幕上,接着处理下一行,反复操作,直到文件结尾. 模式空间:将读取的内容放在内存中的一块区域编辑,这些内存空间就称为模式空间 格式: sed [options]    'Address Com

2017.04 vue学习笔记---08表单控件绑定---基础用法

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> div{ margin-bottom: 30px; } </style> <script src="js/vue.js"></script> <