【Web前端笔记10】CSS3新特性

10 CSS3新特性

1、圆角

2、阴影

(1)盒阴影

3、背景渐变

(1)线性渐变(主要掌握这种就可)

(2)径向渐变

4、transform    转换    变型

(1)位移 单位px %

(2)旋转 翻转

(3)缩放

(4)倾斜

5、transition 过渡

(4)简写

6、animation    动画

(1)概念:动画是使元素从一种样式逐渐变化为另一种样式的效果

(2) 定义动画的过程

(3)调用动画


10 CSS3新特性

1、圆角

border-radius:;

  • value:表示四个角
  • value value:左上角和右下角    右上角和左下角
  • value value value:左上角 左下角和右上角 右下角
  • value value value value:左上角 右上角 右下角 左下角

取值:px %

不能取负值(取值越大 幅度越大)

百分比border-radius可以用来画圆形和椭圆

(1)指定背景颜色的元素圆角

(2)指定边框的元素圆角

2、阴影

(1)盒阴影

        box-shadow    向框添加一个或多个阴影

        box-shadow:h-shadow  v-shadow blur spread color inset;

  • h-shadow:必需    水平阴影的位置    可负值
  • v-shadow:必需    垂直阴影的位置    可负值 
  • blur:可选    模糊距离 只能正值
  • spread:可选    阴影尺寸 可负值
  • color:可选    阴影颜色
  • inset:可选    将外部阴影(outset)改为内部阴阴影

3、背景渐变

CSS3渐变可以在两个或多个指定的颜色之间现实平稳的过渡

background-image:;

简写为:background:;

(1)线性渐变(主要掌握这种就可)
  • 向下/向上/向左/向右/对角方向
  • 必须至少定义两种颜色结点
  • background-image: linear-gradient(direction,color-stop1,color-stop2,...);
  • 同时也可以设置一个起点和一个方向(或一个角度)

background-image: linear-gradient(angle,color-stop1,color-stop2,...);

角度是指水平线和渐变线之间的角度,逆时针方向计算,换句话说,0deg将创建一个从下到上的渐变,90deg将创建一个从左到右的渐变

默认渐变方向:从上往下,方向可以省略

取值:

  • 关键词    to right
(2)径向渐变

        由它们的中心定义

        background-image: radial-gradient(渐变的中心点,渐变的形状,颜色1,颜色2,...)

        渐变的中心点默认为宽高的一半

        可以设置top right left bottom    注意兼容性 

   渐变的形状默认为

  • 可以设置为circle

background-image: radial-gradient(top,circle,red,orange,yellow,green);

/* 假如浏览器不支持,在后面加浏览器前缀-wenkit-radial-gradient */

4、transform    转换    变型

转换的效果是让某个元素改变形状、大小和位置(例如照片墙照片向左或者向右倾斜)

transform属性向元素应用2D或3D转换,该属性允许我们对元素旋转、缩放、移动或倾斜。

transform: none|transform-functions;

属性值:

(1)位移 单位px %

        transform: translate(x,y);

        当只取一个值,表示水平方向移动的距离

        当取两个值,表示水平方向和垂直方向移动的距离

        取正值,往右下移动

        取负值,往左下移动

        transform: translateX();

        transform: translateY();

3D位移:

        transform:translate3D(x,y,z);

(2)旋转 翻转

单位deg(弧度)

    transform:rotate();

    取正值,顺时针旋转

    取负值,逆时针旋转

                /* transform-origin: right bottom;以右下角为原点进行旋转 *//* transform: translate(50px,50px) rotate(-60deg);先向右下方移动50p    x,再逆时针旋转60° */

        默认元素的中心点为元素的正中心,宽高的一半

        可以通过transform-origin:;修改元素的中心点

(3)缩放

        取值0-1:缩小

        >1:放大

        transform: scale(x,y);

        当只取一个值,等比例缩放

        当取两个值,表示水平方向和垂直方向                 transform: scaleX();

        transform: scaleY();

        /* transform: scaleX(1.5); 水平方向放大1.5倍 transform: scale(3,1);

        水平方向放大3倍,垂直方向放大1倍 */

(4)倾斜

        单位deg

        transform: skew(x,y);

        当只取一个值,表示水平方向倾斜的弧度

        当取两个值,表示水平方向和垂直方向倾斜的弧度

        transform: skewX();

        transform: skewY();

        /* transform: skew(30deg);    水平方向倾斜30° */

            负值的话往左上倾斜,不可为直角

5、transition 过渡

(1)作用:从一种元素样式逐渐改变为另外一种样式(比如点击导航栏的二维码,二维码会慢慢落下来)

(2)注意:过渡必须有触发事件

比如鼠标悬停和鼠标点击等

(3)过渡的属性

  • 过渡的属性——必须
    • 转换
    • 阴影
    • 取值为数值
    • 取值为颜色
    • 可以过渡的属性
  • 过渡的时间——必须
    • transition-timing-function:;
    • 1s=1000ms
    • 取值为s|ms
    • 默认为0s|0ms
    • transition-duration:;
  • 过渡的速度变化类型——可选
    • 取值:

                ease 默认值 先加速后减速

                ease-in 加速

                ease-out 减速

                ease-in-out 先加速后减速

                linear 匀速

  • 过渡的延迟时间——可选
    • transition-delay: ;
    • 默认0s|0ms
    • 取值正负

                    当取正值,表示多久以后出发这个过渡

                    当取负值,表示把这段时间的效果跳过

  • 可以过渡的属性
    • 取值为颜色
    • 取值为数值
    • 阴影
    • 转换
(4)简写

        transition:过渡的属性    过渡的持续时间    过渡是速度变化类型    过渡的延迟时间;

transition: all 2s ease-in-out -1s;

.box{width:200px;height: 200px;background-color: red;transition-property: width,background-color,border-radius;/* 可以简写为all */transition-duration: 1s,2s,3s;/* 若是三者过渡时间都是1s的话,就只需写一个值就行 */}.box:hover{width: :1200px;background-color: green;border-radius: 100px;}/* 如果只写在鼠标悬停那里,那么鼠标离开,样式会立马回到原样,所以要写在元素里面 */

6、animation    动画

(1)概念:动画是使元素从一种样式逐渐变化为另一种样式的效果
  • 可以改变任意多的样式和次数
  • 用百分比来规定变化发生的事件,或者用关联词“from”and"to",等同于0%和100%
  • 动画比较类似于flash中的逐帧动画,
  • 过渡只需要控制开始和结束的状态
(2) 定义动画的过程
@keyframes change {0%|from{CSS样式}任意百分比{CSS样式}100%|to{CSS样式}}
(3)调用动画

animation:name 持续时间 速度变化类型 延迟时间 播放次数(number|infinite)播放方向(alternate)动画停在最后一帧;

                 必须       必须        可选            可选            可选       次数|无限循环         可选

  • animation-name:change; 动画名称
  • animation-duration: 1s; 动画持续时间
  • animation-timing-function: ease-in;    动画速度变化类型
  • animation-delay: 0s; 延迟时间
  • animation-iteration-count: 3; 动画播放次数
  • animation-direction: alternate; 动画的播放方向放方向
  • animation-fill-mode: forwards;   动画停留在最后一帧
  • animation-play-state: 动画的播放状态 默认running;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/261895.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTTP与HTTPS-HTTPS 的应用数据是如何保证完整性的?

资料来源 : 小林coding 小林官方网站 : 小林coding (xiaolincoding.com) HTTPS 的应用数据是如何保证完整性的? TLS 在实现上分为握手协议和记录协议两层 TLS 握手协议就是我们前面说的 TLS 四次握手的过程,负责协商加密算法和生成对称密钥,后续用此密…

【Python】实现一个类似于Glass2k的Windows窗口透明化软件

一 背景说明 网上看到一款Windows下的窗口透明化工具Glass2k(Glass2k官网),可以简单地通过快捷键实现任意窗口的透明化,还挺方便的,想用Python自己实现一下类似的功能。 软件已经开源到:窗口透明化小工具开…

Java 面向对象进阶 14 抽象类和抽象方法(黑马)

抽象类不能实例化(创建对象): 抽象类中不一定有抽象方法: 有抽象方法的类一定是抽象类: 可以有构造方法:(作用:在创建子类对象时,给属性进行赋值的) Perso…

RabbitMQ保证消息的可靠性

1. 问题引入 消息从发送,到消费者接收,会经理多个过程: 其中的每一步都可能导致消息丢失,常见的丢失原因包括: 发送时丢失: 生产者发送的消息未送达exchange消息到达exchange后未到达queue MQ宕机&…

C++ Webserver从零开始:配置环境(九)——下载github的项目进行测试

前言 大家好,我又来更新Webserver的博客了。上一次更新这个专栏时2024.2.5号,离现在已经13天了。非常抱歉,中间隔了那么久。一方面是基础知识学完之后,就要开始自己写代码了。看基础知识和写代码是两回事,理论和实践的…

Git常用命令整理

在介绍安装和简单使用前,先看一下百度百科中的简介吧: ———————————————————————————————————————— Git --- The stupid content tracker, 傻瓜内容跟踪器。 Linux 是这样给我们介绍 Git 的: Git 是用…

Kafka进阶

文章目录 概要应用场景消息队列两种模式kafka的基础架构分区常见问题小结 概要 kafka的传统定义:kafka是一个分布式的基于发布\订阅模式的消息队列,主要用于大数据实时处理领域。 kafka的最新概念:kafka是一个开源的分布式事件流平台&#x…

UIKit 在 UICollectionView 中拖放交换 Cell 视图的极简实现

概览 UIKit 中的 UICollectionView 视图是我们显示多列集合数据的不二选择,而丰富多彩的交互操作更是我们选择 UICollectionView 视图的另一个重要原因。 如上图所示:我们实现了在 UICollectionView 中拖放交换任意两个 Cell 子视图的功能,这…

不要抱怨,不如抱 Java 运算符吧 (1)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人…

学习鸿蒙基础(5)

一、honmonyos的page路由界面的路径 新建了一个page,然后删除了。运行模拟器的时候报错了。提示找不到这个界面。原来是在路由界面没有删除这个page。新手刚接触找了半天才找到这个路由。在resources/base/profile/main_pages.json 这个和微信小程序好类似呀。 吐槽&#xf…

普中51单片机学习(串口通信)

串口通信 原理 计算机通信是将计算机技术和通信技术的相结合,完成计算机与外部设备或计算机与计算机之间的信息交换 。可以分为两大类:并行通信与串行通信。并行通信通常是将数据字节的各位用多条数据线同时进行传送 。控制简单、传输速度快&#xff1…

百度智能云分布式数据库 GaiaDB-X 与龙芯平台完成兼容认证

近日,百度智能云的分布式关系型数据库软件 V3.0 与龙芯中科技术股份有限公司的龙芯 3C5000L/3C5000 处理器平台完成兼容性测试,功能与稳定性良好,获得了龙架构兼容互认证证书。 龙芯系列处理器 通用 CPU 处理器是信息产业的基础部件&#xf…

LINUX读取RTC实时时钟时间

linux 读写RTC时间_linux rtc 读写-CSDN博客

《游戏引擎架构》--学习3

内存管理 优化动态内存分配 维持最低限度的堆分配,并且永不在紧凑循环中使用堆分配 容器 迭代器 Unicode

LeetCode 0590. N 叉树的后序遍历:深度优先搜索(DFS)

【LetMeFly】590.N 叉树的后序遍历:深度优先搜索(DFS) 力扣题目链接:https://leetcode.cn/problems/n-ary-tree-postorder-traversal/ 给定一个 n 叉树的根节点 root ,返回 其节点值的 后序遍历 。 n 叉树 在输入中按层序遍历进行序列化表…

【Linux】自主WEB服务器实现

自主web服务器实现 1️⃣构建TcpServer2️⃣构建HttpServer3️⃣构建HttpRequest和HttpResponseHttp请求报文格式Http相应报文读取、处理请求&构建响应读取请求中的一行读取请求中需要注意的点 4️⃣CGI模式判断是否需要用CGI处理请求构建任务&线程池管理 5️⃣实验结果…

解决pycharm中PIL安装失败

问题:在调用pil时显示pil标红 我在设置中下载每次失败,显示 ERROR: Could not find a version that satisfies the requirement PIL (from versions: none) ERROR: No matching distribution found for PIL我尝试了很久,查看了一些博客 &a…

odoo16-API(Controller)带有验证访问的接口

odoo16-API(Controller)带有验证访问的接口 目前我使用odoo原生的登录token来验证登陆的有效性 废话不多说直接上代码 # 测试获取session_id import requests class GetOdooData(http.Controller):def getOdooToken(self):# http://localhost:8123访问…

OpenAI 的 GPTs 提示词泄露攻击与防护实战:防御卷(一)

前面的OpenAI DevDay活动上,GPTs技术的亮相引起了广泛关注。随着GPTs的创建权限开放给Plus用户,社区里迅速涌现了各种有趣的GPT应用,这些都是利用了Prompt提示词的灵活性。这不仅展示了技术的创新潜力,也让人们开始思考如何获取他…

AI新工具(20240222)SDXL-Lightning-节跳动开发一个快速的文本到图像生成模型;GoEnhance - 视频风格转换等

SDXL-Lightning - 节跳动开发一个快速的文本到图像生成模型 SDXL-Lightning是字节跳动开发一个快速的文本到图像生成模型,能够在几个步骤内生成高质量的1024像素图像。该模型发布用于研究目的,可以从stabilityai/stable-diffusion-xl-base-1.0中提取模型…