1,前言


记录一些很好用的css属性

1,calc()


calc()函数用于动态计算长度值,任何长度值都可以使用calc()函数进行计算,需要注意的是,运算符前后都需要保留一个空格,例如:

.box{
width: calc(100% - 10px)
height: calc(100% - 2rem)
}

兼容性

2,min()


min()函数允许你从逗号分隔符表达式中选择一个最小值作为css的属性值,例如:

.box{
width: min(1vw, 4em, 80px)
}

在上面的例子中,宽度最多是80px。如果视口的宽度小于800px,或者一个em的宽度小于20px,则会更窄。换句话说,最大宽度是80px。

当min() 用于控制文本大小时,要保证文本足够大以便于阅读。建议把 min() 方法嵌入到 max() 中

p{
font-size: max(min(0.5vw, 0.5em), 1rem)
}

这用于保证最小值是1rem,这样在页面缩放时文本也会缩放

兼容性

3,max()


max()函数让你可以从一个逗号分隔的表达式列表中选择最大(正方向)的值作为属性的值

.box{
width: max(10vw, 4em, 80px)
}

在上面这个例子中,宽度最小会是80px,除非视图宽度大于800px或者是一个em比20px宽。简单来说,最小宽度是80px。你也可以认为max()的值提供了一个属性最小可能的值。

当max()用于控制文本大小时,确保文本总是足够大以供阅读。一个建议是使用min()嵌套在 max()中的函数,该函数的第二个值是一个相对长度单位,该单位总是足够大以读取

p{
font-size: max(min(0.5vw, 0.5em), 1rem)
}

这确保了1rem的最小大小,如果页面缩放,文本大小会缩放

兼容性

4,clamp()


clamp() 函数的作用是把一个值限制在一个上限和下限之间,当这个值超过最小值和最大值的范围时,在最小值和最大值之间选择一个值使用。它接收三个参数:最小值、首选值、最大值clamp(MIN, VAL, MAX),当首选值比最小值要小时,则使用最小值,当首选值介于最小值和最大值之间时,用首选值,当首选值比最大值要大时,则使用最大值,表达式中的每一个值都可以用不同的单位。

.box{
width: clamp(200px, 50vw, 600px)
}

兼容性

5,gap


gap属性是用来设置网格行与列之间的间隙,该属性是row-gap和column-gap的简写形式,适用于Flex,Grid和multi-column布局的元素

#flex {
width: 300px;
display: flex;
gap: 20px 5px;
}
#grid {
height: 200px;
display: grid;
grid-template: repeat(3, 1fr) / repeat(3, 1fr);
gap: 20px 5px;
}

兼容性



6,writing-mode


writing-mode 属性定义了文本在水平或垂直方向上如何排布。

语法格式如下:

writing-mode: horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr

horizontal-tb:水平方向自上而下的书写方式。即 left-right-top-bottom

vertical-rl:垂直方向自右而左的书写方式。即 top-bottom-right-left

vertical-lr:垂直方向内内容从上到下,水平方向从左到右

sideways-rl:内容垂直方向从上到下排列

sideways-lr:内容垂直方向从下到上排列

兼容性

如果看了觉得有帮助的,我是@鹏多多,欢迎 点赞 关注 评论;

END

往期文章

个人主页

学会这些CSS技巧让你写样式更加丝滑的更多相关文章

  1. 样式缩写——css技巧(一)

    一.margin和padding缩写 例: .sample-margin1{ margin-top:15px; margin-right:20px; margin-bottom:12px; margi ...

  2. 学无止境的CSS(xHTML+CSS技巧教程资源大全)

    本文里面收集一些有关CSS的技巧.教程.工具和观点等,其中一些你也许早就运用的炉火纯青,也可能有的你听都没听说过.不管是新手还是高手,大家都继续学习吧. 一,Web 标准 要玩游戏,就得先了解规则.要 ...

  3. 网页设计师必备的10个CSS技巧

    CSS是网页设计师的基础,对CSS的了解能使他们能够设计出更加美观别致的网页.使用CSS技巧来巧妙地处理CSS是非常令设计师着迷的事情.在CSS的深海世界里有很多有意思的东西,你只需要找到最适合你的就 ...

  4. 20个很有用的CSS技巧

    导语:下面这几个CSS技巧你可能不知道,1.彩色照片变黑白,2.所有元素垂直居中,3.禁用鼠标,4.模糊文字,小编学完能量满满的,觉得对CSS又充满了爱,你也来看看. 1. 黑白图像 这段代码会让你的 ...

  5. 50个CSS技巧

    这里我工作中收集了10个很不错的CSS技巧,你可以用在你的项目上.它可以帮你很好地整理你的元素并让他们看起来蛮酷的.下面开始我们的内容,希望你会喜欢它.下面是我收集的CSS技巧,希望能帮助到你,感觉收 ...

  6. 最全的CSS浏览器兼容问题【CSS技巧 】

    CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2.0的过度,请尽量用xhtml格 ...

  7. 10个网页设计师必备的CSS技巧(转)

    英文原文:10 Essential CSS Rules for Web Designers CSS是网页设计师的基础,对CSS的了解能使他们能够设计出更加美观别致的网页.使用CSS技巧来巧妙地处理CS ...

  8. 100个实用的CSS技巧,以及遇见的问题和解决方案。

    前言 本篇文章将会持续更新,我会将我遇见的一些问题,和我看到的实用的CSS技巧记录下来,本篇文章会以图文混排的方式写下去.具体什么时候写完我也不清楚,反正我的目标是写100个.  本案例都是经本人实测 ...

  9. 前端设计师必须知道的10个重要的CSS技巧

    对于一个初入门的前端设计师,在设计修改网站前端的时候,我们需要编写一些CSS.JS的内容达到界面效果.今天分享10个对于前端设计师来说重要的CSS技巧,这也是我在给许多客户做网站的过程当中总结出来的. ...

随机推荐

  1. 012.Ansible高级特性

    一 本地执行 如果希望在控制主机本地运行一个特定的任务,可以使用local_action语句. 假设我们需要配置的远程主机刚刚启动,如果我们直接运行playbook,可能会因为sshd服务尚未开始监听 ...

  2. nginx 日志管理配置详解

    nginx的日志管理 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$statu ...

  3. MyBatis 高级查询之一对多查询(十)

    高级查询之一对多查询 查询条件:根据游戏名称,查询游戏账号信息 我们在之前创建的映射器接口 GameMapper.java 中添加接口方法,如下: /** * 根据游戏名查询游戏账号 * @param ...

  4. MyBatis 环境搭建(四)

    MyBatis 引言 在回顾JDBC时,我们已经创建有 Java 工程,而且也已经导入 mysql 依赖包,这里就直接在原有工程上搭建MyBatis环境,以及使用MyBatis来实现之前用 JDBC ...

  5. Linux 性能监控工具

  6. Go语言的函数04---变量作用域

    package main import "fmt" /* 变量的作用域 全局变量:写在函数外,当前包下的所有函数都可以访问的变量(整个包),生命周期与程序相同(程序结束时,全局变量 ...

  7. MindSpore技术理解(上)

    MindSpore技术理解(上) 引言 深度学习研究和应用在近几十年得到了爆炸式的发展,掀起了人工智能的第三次浪潮,并且在图像识别.语音识别与合成.无人驾驶.机器视觉等方面取得了巨大的成功.这也对算法 ...

  8. 毫米波RADAR与LIDAR探秘

    毫米波RADAR与LIDAR探秘 说起激光雷达和毫米波雷达,相信业内人士并不陌生,激光雷达是以发射激光束探测目标的位置.速度等特征量的雷达系统.而毫米波雷达是指工作在毫米波波段探测的雷达.毫米波实质上 ...

  9. MLPerf结果证实至强® 可有效助力深度学习训练

    MLPerf结果证实至强 可有效助力深度学习训练 核心与视觉计算事业部副总裁Wei Li通过博客回顾了英特尔这几年为提升深度学习性能所做的努力. 目前根据英特尔 至强 可扩展处理器的MLPerf结果显 ...

  10. Qt Creater快速定义函数的快捷键

    1.简介 在Qt creator中编写函数的时候,在头文件编写了函数,需要在相应的cpp文件中编写对应的函数定义实现,如果每次都需要手动的敲击全部的代码,这会非常的耗时耗力,显得很方便,这时候就需要巧 ...