*/ } ②翘边阴影 原理:利用:before和:after,加上绝对定位的性质,可以形成一个矩形,这个时候结合CSS3的倾斜属性skew和旋转属性rote。 rotate(5deg); transform:skew(15deg) rotate(5deg); } 更多 完整代码已分享到: http://git.oschina.net/LuckyWinty/CSS3Shadow 更多CSS3实现的动画效果demo,参考: http://git.oschina.net/LuckyWinty/CSS3demo/tree/master/
相信大多数前端同学在面试或者学习的时候都遇到过使用 CSS 绘制正方形、三角形等基础图形的问题,各种奇技淫巧想必大家都运用得比较熟练。 本文则介绍了使用 CSS3 中提出的 clip-path 来解决该问题的方法。 clip-path,顾名思义,可以创建一个只有元素的部分区域可以显示的剪切区域。区域内的部分显示,区域外的隐藏。 其语法和使用案例可移步 MDN 查看,这一来源于 SVG 的属性相当强大,用其完成三角形之类基础图形的绘制十分简单。 可以看到,clip-path 能够完成相当复杂的图形绘制。 唯一能制约 clip-path 放飞自我的可能就是兼容度了,截至本文写作时,浏览器对 clip-path 的支持程度如下: ?
border: none; } .caleder div:nth-of-type(2) p:nth-of-type(1) span:nth-child(-n+3) color: red; } .caleder div:nth-of-type(2) p:nth-child(8) span:nth-child(3) /p>
3031123< 27282930123<
CSS3 浏览器内核 transition过渡 transition transition-property: all; transition-duration: 1s; first-child{ transform: rotateY(180deg); } .parent:hover div:last-child{ transform: rotateY(0);} CSS3 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); text-align: center ;margin:5px auto;"> <img src="<em>CSS3</em> <em>CSS3</em>伪元素 CSS 伪元素用于设置元素指定部分的样式。 例如,它可用于: 设置元素的首字母、首行的样式 在元素的内容之前或之后插入内容 请注意双冒号表示法 - ::first-line 对比 :first-line 在 <em>CSS3</em> 中,双冒号取代了伪元素的单冒号表示法
footer…… 2、行内元素inline 一行可以显示多个 宽度和高度默认由内容撑开 不可以设置宽高 ➢ 代表标签:a、span 、b、u、i、s、strong、ins、em、del…… 3、 层叠性 控制文字的都能继承 优先级: 权重:(行内,id,类,标签) ---- 盒子模型 内容区域的宽度和高度 3. 边框( border ) 4. 内边距( padding ) 5. content)、内边距区域(padding)、边框区域(border)、外边距区域( margin)构成,这就是 盒子模型 ---- 组成 1.内容区域:content 2.边框区域:border 3. 小括号里的n可以为数学公式,例如: n为0、1、2、3…… ---- 伪元素 伪标签,由CSS创建 必须设置content属性才能生效、伪元素默认是行内元素 例如: ---- 标准流 ➢ 标准流: 3.定位 让元素摆放在网页的==任意位置==。一般用于盒子之间的叠层情况。 使用场景: 解决盒子之间的层叠问题,定位之后的元素层级最高,可以层叠在其他盒子上面。
一、CSS3 动画简介 " 动画 " 是 CSS3 相较于 CSS 的 颠覆性 特性 之一 ; 在 CSS3 中 , 可以设置 多个 动画节点 , 精确地 控制 一个动画 或 若干动画 , 实现 复杂 的 动效 ; 动画可以实现 : 过渡效果 更多变化 更多控制 自动播放 等效果 ; 二、CSS3 动画实现步骤 CSS3 动画 实现 步骤 : 首先 , 使用 @keyframes 定义动画 , 后面的
/ } 2、快速而有效的 CSS3 技巧 通过相邻兄弟选择器 将 div下一个p更改为 红色字体 div.s1+p div+p 通过通用兄弟选择器 将 div后所有的p 背景改为 #ccc色 div~ p △CSS3 多栏布局 column-width: 12em;或column-count: 4; #main { column-gap: 2em; column-rule: thin dotted #999 ; column-width: 12em; } △文字换行 word-wrap: break-word; △CSS3 属性选择器 img[alt="atwi_oscar"] { border: 3px △背景图片位置 7、可缩放图标:响应式设计中的完美选择 △请见 http://fico.lensco.be/ CSS3 过渡、变形和动画 1、过渡 transition: all 1s ease 0s 美化 HTML5 表单 input:not([type="range"]), textarea, select{/样式/} 针对表单的 CSS3 伪类选择器 input:required :选择必填表单域
CSS3 具有相当多的新增属性,而且包括阴影、动画、过渡等华丽的效果。但是由于 CSS3 出来并没有很久,各个浏览器厂商还在开发中,有些属性仍然会带有实验性前缀。 而且类似制作动画、渐变的 CSS3 代码也相当复杂,一旦写错就会导致出现问题。 为此,有人开发了一个生成 CSS3 代码的工具 Create CSS3 。 这类的工具已经非常多了,但并不是很全,往往只是单纯的生成按钮或者渐变、阴影等等,而这个工具,几乎包括了所有的 CSS3 属性。 你只需要选择一个属性,填写一些参数,就可以生成对应的 CSS3 代码,同时它会自动的在相关属性前面增加实验性前缀,而且在下面还可以看到预览效果。 如果你比较懒,又需要一些 CSS3 编写的效果,不妨来使用一下 Create CSS3 吧! ----
[id*=article]{ color:red; } 3.首字符匹配选择器。只要开头字符符合匹配。 after{ content:"插入的内容" } p.after{ content:"文字" } 3. div{ /*其他浏览器*/ box-shadow:3px 4px 2px #000; /*webkit 浏览器*/ -webkit-box-shadow:3px 4px 2px #000; /*firefox*/ -moz-box-shadow:3px 4px 2px #000 3.backrground-origin 用于指定background-position 属性的参考坐标起始位置。
定义在过渡效果出现前需要等待多长时间,单位是秒或者毫秒; JavaScript 语法: object.style.transitionDelay="2s"; CSS语法: transition-delay: 3s
url(路径) 背景图平铺 background-repeat 可选值:repeat、no-repeat、repeat-x、repeat-y CSS background-repeat 属性 (w3school.com.cn list-style list-style-type:设置圆点(序号)样式 list-style-image:设置图片代替圆点 list-style:既能设置圆点样式,又能设置图片样式 浮动及清除浮动 css提供3种布局机制 法 产生问题的父标签添加 overflow 属性 overflow: hidden | auto | sroll; after 伪元素法 after伪元素法是额外标签法的升级版(推荐) 核心原理:利用CSS3 的新特性自动创建一个叫做after的伪元素,再使用clear:both进行浮动清除 双伪元素法 双伪元素是after伪元素的升级方法 核心原理:利用CSS3的新特性自动创建before和after两个伪元素
1、border-radius 圆角是做网页永远绕不过的话题,以前基本是通过背景图片做的,有了CSS3后可以使用简单的属性搞定,可以通过border-radius设置元素的圆角半径。 2、border-image 边框都是线条略显单调,使用CSS3的border-image属性可以用图片作为边框的修饰。 3、box-shadow box-shadow 属性向框添加一个或多个阴影。 box-shadow: 3px 3px 3px orange, 3px 3px 3px red; 4、box-sizing 传统的盒模型width就是指内容区域宽度,和padding、border没有关系
CSS3总结 一、选择器 1.通用选择器 E~F:E后边所有和E同级的F 2.属性选择器 E[att^=’val’]:att属性中以val开头的 E[att$=’val’]:以val结尾的 E[att* =’val’]含有val的选择器 3.伪类选择器 E:nth-child(n):选中E的父亲的第n个孩子并且该孩子必须是E否则选不中 E:nth-of-type(n):选中所有的E再从中选出第N个E 二 10px 10px 10px 2.边框 border-p_w_picpath:url() (10% 10% 10% 10%|10 10 10 10) (stretch | repeat | round) 3. top,red 0%,blue 100%); -webkit-mask-p_w_picpath:-webkit-radial-gradient(50% 50px,red 0%,blue 100%); 3. 命令 -webkit-backface-visibility:hidden; -webkit-transform-style:preserve-3d;
source=cloudtencent 什么是 CSS3? CSS3 是 CSS 一个新的标准,直接理解为是 CSS 的升级版,里面新增了很多样式(特性)。 CSS3 盒子模型 注意 CSS3 盒子模型必须要掌握,否则你在实际开发中遇到样式错乱很难排查问题。 但是在实际开发中,前者是相对更加灵活的,但是 W3C 规范中规定了它们不能被包含在其中,为了解决这个问题,在新的 css3 标准中新增了 box-sizing 属性,用于切换两种盒子模型。 <body>
3.5.4 动画
有人将HTML 5和CSS 3比做Flash的杀手,这是有原因的。 因为除了HTML 5能够实现矢量图形制作外,使用CSS 3还可以对图像进行更细致的操作,它新增了动画功能,要实现图像的变形等功能,只需要一行CSS就可以实现了。 通过下面这个例子,读者可以试验一下利用简单的CSS 3特性完成鼠标悬停时的动画效果,见代码清单3-19。 代码清单3-19 CSS 3动画效果HTML代码
a img.logo{ opacity:0.8; 我们可以通过图 3-29进行对比,或者亲手试验一下。
图3-29 CSS 3的动画效果
通过CSS 3中动画特征的高级用法,还可以创建移动、放大、缩小、矩阵变形等一系列动画效果。
image.png 不用javascript也可以做互动动画。
什么是CSS3? CSS即层叠样式表(Cascading StyleSheet)。 在网页制作时采用层叠样式表技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。 CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多新的模块也被加入进来。 CSS3是在CSS的接触上增加了很多新的特性,与低版本的CSS并不冲突。
CSS3 多列布局 columns a.column-width 每列的宽度 ? 实例代码: ? 3.同样这个属性也只能作用在块元素上。 多列布局主要靠这两个属性进行布局。 c.column-gap 列之间的间隔 用于设置列于列之间的间隔,不能为负值。 3.值为 all || none 其它属性浏览器暂时支持不是很好,先不研究,呵呵。
声明必须放在{}中并且声明可以是一条或者多条 每条声明由一个属性和值构成,属性和值用冒号分开,每条语句用英文冒号分开 注意: css的最后一条声明,用以结束的“;”可写可不写,但是基于W3c :
直接在HTML标签设置样式
3. --其中@import导入文件,前面必须放一个符号,url(".....css")表示样式文件位置--> 3)链接式和导入式区别 1. 选择器的优先级 id选择器>class类选择器>标签选择器 7.css3高级选择器 1. E F:nth-child(n) 选择父级元素E 的第n个元素F(n可以是1/2/3)关键字为even odd 4)E:first-of-type 选择父级元素具有指定类型的第一个E元素过渡(transition)是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。 如电影胶片 在CSS3里使用transition可以实现补间动画(过渡效果),并且当前元素只要有“属性”发生变化时即存在两种状态(我们用A和B代指),就可以实现平滑的过渡,为了方便演示采用hover切换两种状态 3 transition-property 规定应用过渡的 CSS 属性的名称。 3 transition-duration 定义过渡效果花费的时间。默认是 0。 3 transition-timing-function 规定过渡效果的时间曲线。默认是 "ease"。 3 transition-delay 规定过渡效果何时开始。默认是 0。 3 如果想要所有的属性都变化过渡, 写一个all 就可以 transition-duration 花费时间 单位是 秒 s 比如 0.5s 这个s单位必须写 ms 毫秒 运动曲线 默认是 ease