css中100vh 加减运算[通俗易懂]

css中100vh 加减运算[通俗易懂]vh/vwvh:相对于视窗的高度,视窗被均分为100单位的vh;vw:相对于视窗的宽度,视窗被均分为100单位的vw;vmax:相对于视窗的宽度或高度中较大的那个。其中最大的那个被均分为100单位的vmax;vmin:相对于视窗的宽度或高度中较小的那个。其中最小的那个被均分为100单位的vmin;视区所指为浏览器内部的可视区域大小,即window.innerWidth/window.innerHeight大小,不包含任务栏标题栏以及底部工具栏的浏览器区域大小。calcca…

大家好,又见面了,我是你们的朋友全栈君。

vh/vw 
vh: 相对于视窗的高度, 视窗被均分为100单位的vh; 
vw: 相对于视窗的宽度, 视窗被均分为100单位的vw;

vmax: 相对于视窗的宽度或高度中较大的那个。其中最大的那个被均分为100单位的vmax; 
vmin: 相对于视窗的宽度或高度中较小的那个。其中最小的那个被均分为100单位的vmin; 
视区所指为浏览器内部的可视区域大小, 
window.innerWidth/window.innerHeight大小,不包含任务栏标题栏以及底部工具栏的浏览器区域大小。

calc 
calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。比如说,你可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。为何说是动态值呢?因为我们使用的表达式来得到的值。不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。

calc是 css3提供的一个在css文件中计算值的函数:

  • 用于动态计算长度值。
  • 需要注意的是,运算符前后都需要保留一个空格,例如:width: calc(100% – 10px);
  • 任何长度值都可以使用calc()函数进行计算;
  • calc()函数支持 “+”, “-“, “*”, “/” 运算;
  • calc()函数使用标准的数学运算优先级规则;
calc(100vh - 10px)  表示整个浏览器窗口高度减去10px的大小
calc(100vw - 10px)   表示整个浏览器窗口宽度减去10px的大小
  •  

一般用来设置流式布局宽高,当然,你可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值

calc()的兼容性如下,使用时需注意:

这里写图片描述

 

 

 

less中calc 使用

瑤11 2018-10-10 09:36:26   2270   收藏 1
分类专栏: less 文章标签: less calc
版权
发现在less中 calc(100% -4rem) 等带单位混合运算会被less解析忽略单位,全部按照百分比计算,此例中的计算被less编译成calc(96%)。

 

解决方案

      max-height: calc(~”100vh –  69px”);

结合less使用特点

    @postHeight: 46px;

    @postBorderHeight: 1px;

    @postMarginHeight: 10px;

     margin-bottom: calc(~”@{postHeight}” )

     margin-bottom: calc(~”@{postHeight} + @{postBorderHeight} * 3 + @{postMarginHeight} * 2″ )

 

提示:注意运算符(+ –  *  / )的前后一定要有空格,便于解析!!!
————————————————
版权声明:本文为CSDN博主「瑤11」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40551876/article/details/82992003

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137690.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • boot连接不上mysql数据库_关于springboot 连接mysql 数据库报错问题

    boot连接不上mysql数据库_关于springboot 连接mysql 数据库报错问题springboot连接MySQL运行报错:Theservertimezonevalue’Öйú±ê׼ʱ¼ä’isunrecognizedorrepresentsmorethanonetimezone.YoumustconfigureeithertheserverorJDBCdriver(viatheserverTimezoneconfi…

    2022年6月25日
    23
  • navicat15永久激活码最新_在线激活

    (navicat15永久激活码最新)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月26日
    64
  • 项目管理办法_企业项目管理

    项目管理办法_企业项目管理本文档的目的是为公司各个项目的项目管理工作提供指导,帮助项目组其他成员了解项目管理的要素,明确项目管理活动中的角色职责、协作流程、作业表单格式要求。本文档将规定项目管理中各角色的职责和权利,在进行协作

    2022年8月2日
    5
  • CGLIB介绍与原理「建议收藏」

    CGLIB介绍与原理「建议收藏」CGLIB介绍与原理(部分节选自网络)一、什么是CGLIB?CGLIB是一个功能强大,高性能的代码生成包。它为没有实现接口的类提供代理,为JDK的动态代理提供了很好的补充。通常可以使用Java的动态代理创建代理,但当要代理的类没有实现接口或者为了更好的性能,CGLIB是一个好的选择。二、CGLIB原理CGLIB原理:动态生成一个要代理类的子类,子类重写要代理的类的所有不是final

    2022年6月4日
    48
  • 欧拉回路是简单回路_欧拉回路的充分必要条件

    欧拉回路是简单回路_欧拉回路的充分必要条件题目大意就是让你对有向图和无向图分别求欧拉回路非常的模板,但是由于UOJ上毒瘤群众太多了所以你必须加上一个小优化就是每次访问过一个边就把它删掉有点像Dinic的当前弧优化的感觉注意是在dfs完一个节点把当前的边加入到栈里面然后输出的时候为了保证原来的顺序就直接弹栈就好了//Author:dream_maker#includeusingnamespacestd;//————–…

    2025年7月14日
    5
  • 使用nodejs进行微信公众号网页开发(一)验证服务器「建议收藏」

    使用nodejs进行微信公众号网页开发(一)验证服务器「建议收藏」微信公众号网页开发(一)验证服务器前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言微信公众号网页开发第一步是验证服务器这一步是必不可少的。我是用的是liunx系统搭配宝塔面板,基于node.js+nginx进行开发的。一、pandas是什么?示例:pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):importnumpyasnpimportpandasaspdimportmatpl

    2022年6月3日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号