css3新特性的应用示例分析


Posted in HTML / CSS onMarch 16, 2022

css3 盒子模型

css3 中可以通过 box-sizing 来指定盒模型,有2个值:即可指定为 content-box 、border-box ,这样我们计算盒子大小的方式就发生了改变。

可以分成两种情况:

box - sizing : content - box 盒子大小为 width + padding + border (以前默认的)

box- sizing : border - box 盒子大小为 width

我们学盒子模型时知道padding 和 border 会撑大盒子,如果盒子模型我们改为了 box - sizing :border - box ,那 padding 和 border 就不会撑大盒子了(前提 padding 和 border 不会超过 width 宽度)

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div{
            box-sizing: border-box;
            border: 2px solid red;
            padding: 3px;
            width: 200px;
            height: 200px;
        }
  
    </style>
</head>
<body>
    <div></div>
</body>
</html>

css3新特性的应用示例分析

由图可以看到,当我去掉box- sizing : border - box ; 后,盒子宽高会变成210px,加上了padding 和 border。

css3 滤镜filter(可做图片模糊处理)

filter css属性将模糊或颜色偏移等图形效果应用于元素。

filter:函数 () ;例如: filter : blur (5px); blur 模糊处理,数值越大越模糊
(目前记住blur()这个函数就行)

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div{
            width: 200px;
        }
        div img{
            width: 100%;
            vertical-align: bottom;
            filter: blur(5px); /*必须要加单位px*/
        }
    </style>
</head>
<body>
    <div>
        <img src="123.jpg" alt="">
    </div>
</body>
</html>

css3新特性的应用示例分析

可以看到图片变模糊了。

css3 calc函数

calc()此 css 函数让你在声明 css 属性值时执行一些计算。

width :calc(100%-80px);

括号里面可以使用 + - * /来进行计算。

示例

有两个盒子,不管父盒子宽度怎么变化,让子盒子宽度永远比父盒子小30px。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .father{
            width: 200px;
            height: 100px;
            background-color: pink;
        }
        .son{
            width: calc(100% - 30px);
            height: 50px;
            background-color: blue;
        }
    </style>
</head>
<body>
    <div class="father">
        <div class="son">
        </div>
    </div>
</body>
</html>

css3新特性的应用示例分析

由上图可以看到,子盒子宽度会随父盒子宽度一同变化。

css3 过渡(transition) (重要)

过渡( transition )是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。

过渡动画:是从一个状态渐渐的过渡到另外一个状态,可以让我们们页面更好看,更动感十足,虽然低版本浏览器不支持(ie9以下版本)但是不会影响页面布局。

我们现在经常和 : hover 一起搭配使用。

transition :要过渡的属性 花费时间 运动曲线 何时开始;

1.属性:想要变化的 css 属性,宽度高度背景颜色内外边距都可以。如果想要所有的属性都变化过渡,写一个 all 就可以。

2.花费时间:单位是秒(必须写单位)比如0.5s

3.运动曲线:默认是 ease (可以省略)

4.何时开始:单位是秒(必须写单位)可以设置延迟触发时间,默认是 0s (可以省略)

运动曲线

css3新特性的应用示例分析

过渡使用口诀:谁做过渡给谁加

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div{
            width: 200px;
            height: 100px;
            background-color: skyblue;
            /* transition :要过渡的属性  花费时间  运动曲线  何时开始; */
            /* 1. 给宽度加过渡 */
            /* transition: width 0.5s ease 0s; */
            /* 2. 给宽度和高度加过渡,多个属性中间用逗号分割 */
            /* transition: width 0.5s , height 0.5s; */
            /* 3. 对:hover里的全部属性加过渡,用all就行 */
            transition: all 0.5s;
        }
        div:hover{
            width: 400px;
            height: 200px;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

css3新特性的应用示例分析

案例-进度条

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .bar{
            width: 150px;
            height: 15px;
            border: 1px solid red;
            border-radius: 7px;
            padding: 1px;
        }
        .bar_in{
            width: 50%;
            height: 100%;
            background-color: red;
            transition: width .5s;
        }
        .bar:hover .bar_in{
            width: 100%;
        }
    </style>
</head>
<body>
    <div class="bar">
        <div class="bar_in"></div>
    </div>
</body>
</html>

css3新特性的应用示例分析

结语

以上就是css3新特性的应用示例分析的详细内容,更多关于css3新特性应用的资料请关注三水点靠木其它相关文章!

 
HTML / CSS 相关文章推荐
CSS3新属性transition-property transform box-shadow实例学习
Jun 06 HTML / CSS
css3 2D图片转动样式可以扩充到Js当中
Apr 29 HTML / CSS
纯CSS3实现圆角效果(含IE兼容解决方法)
May 07 HTML / CSS
使用CSS3编写类似iOS中的复选框及带开关的按钮
Apr 11 HTML / CSS
css3 column实现卡片瀑布流布局的示例代码
Jun 22 HTML / CSS
详解如何在css3打包后自动追加前缀插件:autoprefixer
Dec 18 HTML / CSS
Html5 postMessage实现跨域消息传递
Mar 11 HTML / CSS
html5贪吃蛇游戏使用63行代码完美实现
Jun 25 HTML / CSS
举例详解HTML5中使用JSON格式提交表单
Jun 16 HTML / CSS
HTML5实现动画效果的方式汇总
Feb 29 HTML / CSS
调用HTML5的Canvas API绘制图形的快速入门指南
Jun 17 HTML / CSS
app内嵌H5 webview 本地缓存问题的解决
Oct 19 HTML / CSS
CSS font-variation 可变字体的魅力(实例详解)
HTML中的表单元素介绍
HTML中的表格元素介绍
HTML基本元素标签介绍
使用CSS连接数据库的方式
css常用字体属性与背景属性介绍
分享CSS盒子模型隐藏的几种方式
Feb 28 #HTML / CSS
You might like
一个漂亮的php验证码类(分享)
2013/08/06 PHP
ThinkPHP实现一键清除缓存方法
2014/06/26 PHP
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
phpStudy配置多站点多域名方法及遇到的403错误解决方法
2017/10/19 PHP
javascript 鼠标悬浮图片显示原图 移出鼠标后原图消失(多图)
2009/12/28 Javascript
JQuery将文本转化成JSON对象需要注意的问题
2011/05/09 Javascript
js bind 函数 使用闭包保存执行上下文
2011/12/26 Javascript
JavaScript中valueOf函数与toString方法深入理解
2012/12/02 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
2013/10/30 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
js实现超酷的照片墙展示效果图附源码下载
2015/10/08 Javascript
JavaScript模拟push
2016/03/06 Javascript
微信小程序  modal详解及实例代码
2016/11/09 Javascript
深入理解jQuery.data() 的实现方式
2016/11/30 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
详解Vue 事件驱动和依赖追踪
2017/04/22 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
webpack3之loader全解析
2017/10/26 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
2018/08/24 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
2018/09/25 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
使用Python的Flask框架表单插件Flask-WTF实现Web登录验证
2016/07/12 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
Python实现使用卷积提取图片轮廓功能示例
2018/05/12 Python
python 计算一个字符串中所有数字的和实例
2019/06/11 Python
Python 切分数组实例解析
2019/11/07 Python
对Tensorflow中tensorboard日志的生成与显示详解
2020/02/04 Python
python中安装django模块的方法
2020/03/12 Python
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
经典励志格言:每日一句,让你每天充满能量
2019/08/16 职场文书
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL
MySQL中一条SQL查询语句是如何执行的
2022/04/08 MySQL