当前位置: 首页 > news >正文

20个CSS函数-释放设计创造力和响应能力

20个CSS函数-释放设计创造力和响应能力

CSS是网页设计的核心,使开发者和设计者能够制作出令人叹为观止和反应迅速的网页布局。CSS函数通过引入动态性和多功能性提升了我们的设计能力。在本文中,我们将开始讲解20个CSS函数。

1.rgba():定义颜色

语法:

rgba(red, green, blue, alpha)

rgba() 函数使我们能够精确定义颜色,包括阿尔法(透明度)值。可以创造半透明或半透明的颜色。

例子:

background-color: rgba(255, 0, 0, 0.5);

2.hsl(): 掌握色彩细粒度

语法:

hsl(hue, saturation, lightness)

使用hsl() ,我们可以对颜色进行细粒度控制,这个函数允许我们指定色调、饱和度和亮度值。

例子:

background-color: hsl(120, 100%, 50%);

3.var(): 自定义属性的动态样式

语法:

var(--variable-name)

var() 与自定义属性(CSS变量)搭配,通过引用变量值来实现动态样式。它确保了风格的一致性和灵活性。

例子:

:root {--primary-color: blue;
}
color: var(--primary-color);

4.calc(): 响应式布局

语法:

calc(expression)

calc()可以实现响应式布局,它允许我们在样式属性中执行计算,使其成为根据屏幕尺寸调整布局的理想选择。

例子:

width: calc(50% - 20px);

5.rotate(): 动画转换

语法:

 rotate(angle)

rotate() 以指定的角度旋转元素的功能,可以实现动画。

例子:

transform: rotate(45deg); 

6.scale(): 放大或缩小元素

语法:

scale(factor)

scale() 按比例计算的元素,可以用来实现缩放效果和光滑动画。

例子:

transform: scale(2);

7.translate(): 元素运动

语法:

translate(x, y)

translate()可以实现流体元素运动(横向和垂直地移动元素),非常适合动画和转换。

例子:

transform: translate(20px, 10px);

8.rotateX() ,rotateY() ,rotateZ(): 3D转换运动

语法:

rotateX(angle) ,rotateY(angle) ,rotateZ(angle)

用这些功能实现3D转换运动。它们使复杂的空间操作成为可能。

例子:

transform: rotateX(45deg);

9.skew(): 元素变形

语法:

skew(x-angle, y-angle)

skew() 可以创造性地扭曲元素,对于实现独特的设计效果是完美的。

例子:

transform: skew(30deg, 20deg);

10.blur(): 轻微聚焦和背景模糊

语法:

 blur(radius)

blur() 可以实现软焦点或背景模糊效果,这是提高视觉吸引力的必要条件。

例子:

filter: blur(5px);

11.brightness(): 动态亮度控制

语法:

brightness(factor)

brightness()可以实现动态控制元素的亮度

例子:

filter: brightness(150%);

12.contrast(): 微调视觉清晰度

语法:

contrast(factor)

通过调整元素的对比度来提高或降低能见度。

例子:

filter: contrast(150%);

13.saturate(): 增强色彩活力

语法:

saturate(factor)

通过saturate()可以放大或降低饱和度来控制色彩的活力。

例子:

filter: saturate(200%);

14.invert(): 色彩倒置

语法:

invert(factor)

invert() 可以创造引人注目的颜色倒转,很适合独一无二的设计元素。

例子:

filter: invert(1);

15.drop-shadow(): 提升视觉层次

语法:

drop-shadow(h-shadow v-shadow blur-radius spread-radius color)

使用drop-shadow()可以在元素中加入深度和视觉层次结构。

例子:

box-shadow: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.2));

16.translateX() ,translateY() ,translateZ(): 3d元素转换

语法:

translateX(distance) ,translateY(distance) ,translateZ(distance)

通过沿特定轴变换元素来导航三维空间。

例子:

transform: translateX(20px);

17.url(): 与外部资源挂钩

语法:

url(path)

url() 可以链接到外部资源,如图像或字体。

例子:

background-image: url('image.jpg');

18.linear-gradient(): 线条渐变

语法:

linear-gradient(direction, color-stop1, color-stop2, ...)

linear-gradient()可以创造迷人的线性颜色渐变,非常适合用于背景色。

例子:

background: linear-gradient(to right, red, blue);

19.radial-gradient(): 圆形渐变

语法:

radial-gradient(shape, at position, color-stop1, color-stop2, ...)

非常适合按钮和装饰元素。

例子:

background: radial-gradient(circle, red, blue);

20.attr(): 访问HTML属性

语法:

attr(attribute)

attr() 允许我们访问HTML属性。

例子:

color: attr(data-color);

实际应用

现在,我们已经探索了这些CSS函数,让我们来看看一些实际应用场景:

1.响应设计

诸如calc()var() 对于创建响应性的布局至关重要。我们可以根据屏幕大小和用户的偏好动态调整宽度、高度和颜色。

width: calc(50% - 20px); 

2.动画和过渡

转换功能(rotate() ,scale() ,translate()) 在动画和过渡中扮演关键角色。它们允许我们创建具有吸引力和交互式的用户界面。

transform: rotate(45deg); 

3.图像效果

诸如blur() ,brightness() ,以及contrast() 使我们能够应用各种图像效果,使图像更有视觉吸引力。

filter: blur(5px); 

4.动态主题

css函数可以用来创建动态主题,其中颜色、亮度和对比级别根据用户的偏好而改变。

filter: brightness(150%); 

5.渐变

linear-gradient()radial-gradient() 可以创建渐变色背景的网页元素.

background: linear-gradient(to right, red, blue);

最佳做法和陷阱

最佳做法:

  1. 少使用函数:
    虽然CSS功能强大,但要避免过度使用,因为它会使样式表更难读取和维护。
  2. 测试跨浏览器兼容性:
    确保函数在各种浏览器中按预期工作,特别是那些可能不支持所有函数的旧浏览器。
  3. 优化性能:
    复杂的函数,特别是动画中的功能,会影响呈现性能。根据需要配置和优化。

常见的陷阱:

  1. 过于复杂的表达式
    过于复杂的函数表达式会导致风格上的混淆和错误。保持我们的代码干净和有条理。
  2. 浏览器支持
    一些函数可能在较旧的浏览器中不支持,所以要注意兼容性问题并考虑回退。
  3. 性能瓶颈
    过度使用函数,特别是动画,会造成性能瓶颈。在各种设备上进行测试,以确保用户体验顺利.

总结

css函数是强大的工具,可以增加动态性、创造性和响应我们的网页设计。通过理解他们的能力,明智地使用他们,并遵循最佳实践。

相关文章:

20个CSS函数-释放设计创造力和响应能力

20个CSS函数-释放设计创造力和响应能力 CSS是网页设计的核心,使开发者和设计者能够制作出令人叹为观止和反应迅速的网页布局。CSS函数通过引入动态性和多功能性提升了我们的设计能力。在本文中,我们将开始讲解20个CSS函数。 1.rgba():定义颜…...

Dubbo从入门到上天系列第十八篇:Dubbo引入注册中心简介以及DubboAdmin简要介绍,为后续详解Dubbo各种注册中心做铺垫!

一:Dubbo注册中心引言 1:什么是Dubbo的注册中心? Dubbo注册中心是Dubbo服务治理中极其重要的一个概念。它主要是用于对Rpc集群应用实例进行管理。 对于我们的Dubbo服务来讲,至少有两部分构成,一部分是Provider一部分是…...

CentOS8安装MySQL

选择MySQL数据库的原因: 1、运行速度快; 2、开源免费; 3、易学易用; 4、可移植性,能够在众多不同的系统上工作; 5、丰富的接口,提供了用于C、C等语言的API; 6、支持查询语言&#xf…...

Java集合拓展01

1、List,Set,Map三者的区别 List:一个有序(元素存入集合的顺序和取出的顺序一致)容器,元素可以重复,可以插入多个null元素,元素都有索引。常用的实现类有 ArrayList、LinkedList 和…...

【Django使用】md文档10大模块第5期:Django数据库增删改查和Django视图

Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展…...

在AWS VPC中运行Nagios检查时指定自定义DNS解析器的选项

在AWS VPC中运行Nagios检查,并希望能够指定自定义DNS解析器来处理请求。我想使用Python requests库来实现这个目标。 根据问题描述,您想在AWS VPC中运行Nagios检查,并希望使用Python的requests库来指定自定义DNS解析器。 要解决这个问题&…...

【uniapp】触底加载事件 onReachBottom 不生效

我遇到的情况有&#xff1a; 检查 css 是不是写了overflow-y: scroll; 或 overflow: auto; 是不是用了局部滚动 <scroll-view></scroll-view>&#xff1b; 注意&#xff1a; onReachBottom 和 scroll-view 是冲突的...

Vue3简单使用(一) --- 环境搭建

node版本管理工具nvm&#xff0c;nvm list、nvm use 14.18.0 可以简单启动服务器&#xff1a;npx serve 安装包&#xff1a;npm install xx1 xx2&#xff0c;npm install -D xx3 xx4 vue提供了多个版本 传统项目引入 全局构建版本 <div id"app"><button …...

陪玩圈子系统APP小程序H5,详细介绍,源码交付,支持二开!

陪玩圈子系统&#xff0c;页面展示&#xff0c;源码交付&#xff0c;支持二开&#xff01; 陪玩后端下载地址&#xff1a;电竞开黑陪玩系统小程序&#xff0c;APP&#xff0c;H5: 本系统是集齐开黑&#xff0c;陪玩&#xff0c;陪聊于一体的专业APP&#xff0c;小程序&#xff…...

目标检测原理

一、什么是目标检测 目标检测的任务是找出图像中所有感兴趣的目标&#xff08;物体&#xff09;&#xff0c;确定他们的类别和位置&#xff0c;是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状、姿态&#xff0c;再加上光照、遮挡等因素的干扰&#xff0c;目…...

2、数仓理论概述与相关概念

1、问&#xff1a;数据仓库 建设过程中 经常会遇到那些问题&#xff1f; 模型(逻辑)重复建设 数据不一致性 维度不一致&#xff1a;命名、维度属性值、维度定义 指标不一致&#xff1a;命名、计算口径 数据不规范(字段命名、表名、分层、主题命名规范) 2、OneData数据建设核心方…...

YOLOv5 分类模型 OpenCV和PyTorch两者实现预处理的差异

YOLOv5 分类模型 OpenCV和PyTorch两者实现预处理的差异 flyfish PyTorch封装了PIL库 简单对比下两者的使用方法 import cv2 from PIL import Image import numpy as npfull_path_file_name"/media/a//ILSVRC2012_val_00001244.JPEG"#OpenCV读取图像默认是BGR顺序 …...

使用NPOI处理EXCEL文件:例1-关于优化的一些问题

记得有一次处理Excel文件对比&#xff0c;自己前后使用VBA和NPOI对比了下效率。由于涉及到页面的渲染和刷新&#xff0c;二者的处理速度差了个数量级&#xff08;10多秒和几十分钟的差别&#xff09;。当然使用NPOI操作时也做了一定优化。印象这么深刻这次一有需求就想到了NPOI…...

连接k8s和凌鲨

通过连接k8s和凌鲨&#xff0c;可以让研发过程中的重用操作更加方便。 更新容器镜像调整部署规模查看日志运行命令 架构 所有操作通过k8s proxy连接&#xff0c;通过设置namespace label赋予访问权限。只有赋予特定label的namespace才能被访问。 使用步骤 部署k8s proxy 你…...

C语言——结构体的应用

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 路还在继续&#xff0c;梦还在期…...

人机交互——机器人形态

1.聊天机器人 2.任务型机器人 3.面向FAQ的问答机器人 4.面向KB的问答机器人...

BGP的基础知识

BGP——边界网关协议 IGP——内部网关协议——OSPF、RIP、ISIS EGP——外部网关协议——EGP、BGP 边界网关协议BGP是一种实现自治系统AS之间的路由可达&#xff0c;并选择最佳路由的路径矢量路由协议。目前在IPV4环境下主要使用BGPV4&#xff0c;目前市场上也存在BGPV4&…...

2023.11.18 每日一题(AI自生成应用)【C++】【Python】【Java】【Go】 动态时间序列分析

目录 一、编程挑战&#xff1a;动态时间序列分析 实际应用&#xff1a; 实现提示&#xff1a; 二、实现 1. C 2. Python 3. JAVA 4. Go 一、编程挑战&#xff1a;动态时间序列分析 问题描述&#xff1a; 假设你是一名软件工程师&#xff0c;需要开发一个应用来分析和预…...

uniapp相关记录

一、自定义我的物品组件 my_goods.vue <template><view class"goods-item"><!-- 左侧 --><view class"goods-item-left"><radio :checked"goods.goods_state" color"#c00000" v-if"showRadio" …...

优质猫罐头有哪些品牌?分享5款宠物店自用值得推荐的猫罐头!

不知不觉已经开宠物店7年啦&#xff0c;店里的猫猫大大小小也算是尝试过很多品牌的猫罐头了。优质猫罐头有哪些品牌&#xff1f;在猫罐头的选购上一开始我也是踩了很多坑&#xff0c;各种踩雷。我深知猫罐头的各种门道&#xff0c;新手一不小心就会着道了。 优质猫罐头有哪些品…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例&#xff0c;Webpack.config.js它可能的配置和含义如下&#xff1a; 前言 Module Federation 的Webpack.config.js核心配置包括&#xff1a; name filename&#xff08;定义应用标识&#xff09; remotes&#xff08;引用远程模块&#xff0…...

Android Framework预装traceroute执行文件到system/bin下

文章目录 Android SDK中寻找traceroute代码内置traceroute到SDK中traceroute参数说明-I 参数&#xff08;使用 ICMP Echo 请求&#xff09;-T 参数&#xff08;使用 TCP SYN 包&#xff09; 相关文章 Android SDK中寻找traceroute代码 设备使用的是Android 11&#xff0c;在/s…...

记一次spark在docker本地启动报错

1&#xff0c;背景 在docker中部署spark服务和调用spark服务的微服务&#xff0c;微服务之间通过fegin调用 2&#xff0c;问题&#xff0c;docker容器中服务器来后&#xff0c;注册中心都有&#xff0c;调用服务也正常&#xff0c;但是调用spark启动任务后报错&#xff0c;报错…...

电脑定时关机工具推荐

软件介绍 本文介绍一款轻量级的电脑自动关机工具&#xff0c;无需安装&#xff0c;使用简单&#xff0c;可满足定时关机需求。 工具简介 这款关机助手是一款无需安装的小型软件&#xff0c;文件体积仅60KB&#xff0c;下载后可直接运行&#xff0c;无需复杂配置。 使用…...