首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

巧用CSS3的calc()宽度计算做响应模式布局

其实calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。...不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。 calc()能做什么?...calc()能让你给元素的做计算,你可以给一个div元素,使用百分比、em、px和rem单位值计算出其宽度或者高度,比如说“width:calc(50% + 2em)”,这样一来你就不用考虑元素div的宽度值到底是多少...,而把这个烦人的任务交由浏览器去计算。...好了,到这就告一段络了,再稍微优化一下左右边15px的空距,让两边都挨边。就在父级上加个margin-right:-15px,OK 搞定, 现在拿这个去做响应模式应该很方便了。 本文完〜

1.7K10

2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。 给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和

2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。...子序列 定义为从一个数组里删除一些(或者不删除)元素,但不改变剩下元素的顺序得到的数组例如,3,6,2,7 就是数组 0,3,1,6,2,2,7 的一个子序列。输入:nums = 2,1,3。...答案2023-04-29:解题思路:排序首先对数组进行排序,这样我们就可以根据每个子序列的首尾元素来计算它的宽度了。...计算宽度我们使用 A 表示当前子序列的宽度,即末尾元素与首元素的差值,使用 B 表示上一个子序列的宽度,即前一次循环中的 A 值。...时间复杂度:排序的时间复杂度为 O(nlogn),计算宽度的时间复杂度为 O(n),因此总的时间复杂度为 O(nlogn)。

70700
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【移动端网页布局】流式布局案例 ⑤ ( 连续排列的链接图片 | 设置盒子圆角 | 超出部分隐藏 | 设置浮动布局 | 精确计算浮动元素宽度避免换行 | 设置图片宽度自适应 )

    : hidden; /* 设置圆角 顺序为 : 左上 / 右上 / 右下 /左下 */ border-radius: 10px 10px 0 0; } 4、设置浮动并精确计算宽度 在布局中..., 三个链接图片水平排列在一起 , 并且中间没有缝隙 , 说明这是使用 浮动 进行设置的 , 为父容器的三个子元素都设置 左浮动 , 就可以实现上述效果 ; 设置浮动后 , 还需要设置子元素的宽度 ,...如果子元素横向累加宽度超过 当前宽度 , 会自动换行 , 因此这里为每个子元素设置一个 1/3 宽度 , 即 33.33% ; 子元素 设置浮动和宽度的样式如下 : .brand div...transparent; } img, a { /* 禁用 长按弹出菜单 */ -webkit-touch-callout: none; } input { /* 设置 iOS 取消按钮的自定义样式...左侧按钮盒子中 插入 三 图片 */ content: ""; /* 显示模式设置为块级元素 */ display: block; /* 盒子大小设置为 20 x 18

    3.6K20

    2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。给你一个整数数组 nums ,返回 nums 。

    2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。...子序列 定义为从一个数组里删除一些(或者不删除)元素, 但不改变剩下元素的顺序得到的数组 例如,[3,6,2,7] 就是数组 [0,3,1,6,2,2,7] 的一个子序列。...排序 首先对数组进行排序,这样我们就可以根据每个子序列的首尾元素来计算它的宽度了。 1....计算宽度 我们使用 A 表示当前子序列的宽度,即末尾元素与首元素的差值,使用 B 表示上一个子序列的宽度,即前一次循环中的 A 值。...时间复杂度: 排序的时间复杂度为 O(nlogn),计算宽度的时间复杂度为 O(n),因此总的时间复杂度为 O(nlogn)。

    20130

    超越媒体查询:使用更新的特性进行响应式设计

    注意,我们仍以这种方式使用媒体查询,但是元素本身驱动了响应行为,而不是在CSS中定义了断点 ?。...在此示例中,我们告诉浏览器永远不要让.box类的元素的宽度减小到45%或600px以下(以视口宽度为准,以最小者为准): .box { width : min(45%, 600px) } 如果45%...相反,如果45%计算得出的值大于600px,则将使用600px作为元素的宽度。 max()函数也有类似的情况。 它也接受两个值,但是我们没有定义元素的最小尺寸,而是定义了它可以获取的最大尺寸。...rem使用根()元素的字体大小计算值,而声明em值的元素引用包含它的父元素的字体大小。...如果指定的父元素的大小与根元素的大小不同(例如,父元素为18px,但根元素为16px),则em和rem将解析为不同的计算值。 这使我们可以更细粒度地控制元素在不同响应上下文中的响应方式。

    4.1K10

    静态布局、自适应布局、流式布局、响应式布局、弹性布局等的概念和区别

    【这就导致如果屏幕太大或者太小都会导致元素无法正常显示】 2、设计方法:使用%百分比定义宽度,高度大都是用px来固定住,可以根据可视区域 (viewport) 和父元素的实时尺寸进行调整,尽可能的适应各种分辨率...因为宽度使用%百分比定义,但是高度和文字大小等大都是用px来固定,所以在大屏幕的手机下显示效果会变成有些页面元素宽度被拉的很长,但是高度、文字大小还是和原来一样(即,这些东西无法变得“流式”),显示非常不协调...——分别为不同的屏幕分辨率定义布局,同时,在每个布局中,应用流式布局的理念,即页面元素宽度随着窗口调整而自动适配。即:创建多个流体式布局,分别对应一个屏幕分辨率范围。...5、用em/rem定义尺寸的另一个好处是更能适应缩进/以字体单位padding或margin/浏览器设置字体尺寸等情况(因为em/rem相对于字体大小,会同步改变)。...rem与em、px的区别: px:像素,比较精确的单位,但不好做响应式布局 em:以父节点font-size大小为参考点,标准不统一,容易造成混乱 REM支持的浏览器:Mozilla Firefox

    11K33

    CSS&HTML面经专题——(四)移动端响应式布局

    视觉视口不会影响布局视口的宽度和高度。 固定大小——跟屏幕大小相同,在上面。 layout viewport(布局视口):布局视口定义了pc网页在移动端的默认布局行为。...现代网页需要将layout viewport设置成跟visual viewport等同大小,方便进行网页制作。 2、媒体查询 @media 可以针对不同的媒体类型定义不同的样式,从而实现响应式布局。...,常用flex 对于大屏幕来说,用户体验并不是特别好,有些布局元素会显得很长 4、响应式布局和自适应布局的区别 自适应布局 (1)出现的背景 在PC时代初期,网页设计者都会设计固定宽度的页面,最开始的电脑显示器分辨率种类不多...自适应布局也从PC延伸到手机,成为网页设计时候的需求. (2)概念 就是宽度自适用布局,在不同大小的设备上,随着屏幕宽度缩放,网页以等比例的形式缩放宽度(包括内容)),不管屏幕宽度为多少,网页主体排版布局总是一样的...em 相对单位,基准点为父节点字体的大小,如果自身定义了font-size按自身来计算(浏览器默认字体是16px),整个页面内1em不是一个固定的值。

    2.4K20

    折叠屏 ② | 华为资深专家深入解读折叠屏单页面布局设计

    ,当布局的显示大小发生变化时,元素的显示宽度随之发生改变。...相对缩放 布局特点:相对缩放的特点是布局内元素的显示大小不是固定值(比例锁定),而是通过相对参照物的方式来确定其宽或者高的参数,当布局的显示大小发生变化时,元素的大小随之发生改变。...适配规则:可以定义单个组件的宽度规则,随着页面宽度的变化,⾃动计算可以重复的元素的个数。...适应场景:适合用卡片式呈现内容的场景,通过卡片的横纵扩展在⼤屏上展示更多内容。 适配规则:可以定义单个组件的宽度规则,随着页面宽度的变化,⾃动计算可以重复的卡片个数。...规则:应用定义单个组件所占用的栅格数,随着设备尺寸和栅格数量的变化,自动计算新的栅格数量,得出可以重复的元素的个数。 场景:内容运营类信息展示元素。

    1.5K20

    简单粗暴的移动端适配方案 - REM

    老版常规做法 1.1 viewport缩放 以最小的Iphone4/5的宽度(320px)为基准,还原视觉稿。...对比em和rem: 单位 定义 特点 em font size of the root element 以根元素字体大小为基准 rem font size of the element 以父元素字体大小为基准...3.1 JS计算 通过JavaScript读取屏幕宽度,然后根据宽度计算出对应的尺寸并设置根元素的font-size。...3.2 媒体查询 既然只是为了根据屏幕宽度来设置元素的字体大小,那我们完全也可以通过css3媒体查询来完成这部分工作。...工程应用 我们平时使用rem还有遇到的一大问题就是我们习惯使用px来定义样式,而px到rem是需要计算转化过程的,刚接触rem的时候你可能需要px先定义好页面布局,然后一个一个计算并替换rem单位。

    2K101

    【愚公系列】2023年03月 其他-Web前端基础面试题(CSS_42道)

    (1)、降低图片的大小、选择适当的图片宽度尺寸,压缩图片,选择更小kb的图片格式,以达到最优的显示效果。...10、简述rem布局原理 rem是指相对于根元素的字体大小的单位,即根据html元素的font-size来计算大小。...当按百分比设定一个元素的宽度时,它是相对于父容器的宽度计算的,但是,对于一些表示竖向距离的属性,例如 padding-top , padding-bottom , margin-top , margin-bottom...自适应的单位有以下几个 百分比:% 相对于视口宽度的单位:ww 相对于视口高度的单位:vh 相对于视口宽度或者高度(取决于哪个小)的单位:Vm 相对于父元素字体大小的单位:em 相对于根元素字体大小的单位...浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。

    3.1K20

    响应式布局的实现

    em单位 em是相对长度单位,相对于当前对象内文本的字体尺寸,若未设置则相对于浏览器默认字体尺寸16px,em是会继承父元素的字体的尺寸,使用时需要重新计算子元素的em值避免1.2*1.2=1.44的现象...,使用em可以使元素根据字体大小的动态调整来制作响应式布局。...rem单位 rem单位都是相对于根元素html的font-size来决定大小的,根元素的font-size相当于提供了一个基准,当页面的size发生变化时,只需要改变font-size的值,那么以rem...为固定单位的元素的大小也会发生相应的变化。...因此,如果通过rem来实现响应式的布局,只需要根据视图容器的大小,动态的改变根元素的font-size即可。 vh vw vmin vmax vh: 相对于视窗的高度,1vh等于视窗高度的1%。

    2K30

    简单粗暴的移动端适配方案 - REM

    老版常规做法 1.1 viewport缩放 以最小的Iphone4/5的宽度(320px)为基准,还原视觉稿。...对比em和rem: 单位 定义 特点 rem font size of the root element 以根元素字体大小为基准 em font size of the element 以父元素字体大小为基准...3.1 JS计算 通过JavaScript读取屏幕宽度,然后根据宽度计算出对应的尺寸并设置根元素的font-size。...3.2 媒体查询 既然只是为了根据屏幕宽度来设置元素的字体大小,那我们完全也可以通过css3媒体查询来完成这部分工作。...工程应用 我们平时使用rem还有遇到的一大问题就是我们习惯使用px来定义样式,而px到rem是需要计算转化过程的,刚接触rem的时候你可能需要px先定义好页面布局,然后一个一个计算并替换rem单位。

    1.4K10

    响应式布局,你需要知道这些

    所以它的计算规则比较简单, 1 rem 就等于根元素 html 的字体大小, html { font-size: 14px; } p { font-size: 1rem; /* 1rem =...14px */ } 复制代码 所以,如果我们改变根元素的字体大小,页面上所有使用 rem 的元素都会被重绘。...这里只需要记住一点,百分比是相对于父元素的宽度和高度计算的。 到这里,相信你已经掌握了响应式布局里常用的所有单位。接下来,我们介绍弹性盒和栅格,它们都不是单位,而是一种新的布局方案。...下面是一些响应式图片的最佳实践, 1.确保图片内容不会超出 viewport 试想一下,如果图片固定大小且超出理想视口的宽度,会发生什么?...,以更好地优化不同尺寸大小设备的用户体验。

    1.8K20

    前端架构师之路02_移动端布局方案

    因为市面上的手机宽度比并不是一定的,千万别按照宽度来计算高度的百分比,而是应该按照高度来计算,其他参照参考以上表格 1.2 弹性布局 弹性盒布局是 CSS3 中的一种新布局模式,可以轻松地创建响应式网站布局...,不过多了一个优势,就是参照系没有百分比那么复杂 vh/vw 布局优点 纯 CSS 移动端适配方案,不存在脚本依赖问题 相对于 rem 以根元素字体大小的倍数定义元素大小,逻辑清晰简单,视口单位依赖于视口的尺寸...“1vw = 1/100 viewport width”,根据 视口尺寸的百分比来定义元素宽度 vh/vw 布局缺点 存在一些兼容性问题,Android 4.4 以下不支持 px 转换成 vw 不一定能完全整除...一个页面上,元素的宽度设置上有百分比,也有 rem,字体的样式中有 rem,有 em,也有固定大小的 px;在屏幕宽度过大时不再缩放,也会用到媒体查询,并且响应式设计更多地可能是针对不同设备间的自适应...,以利用 @media 规则为主要手段,而自适应则忽略@media 以比例布局为主,目的是适应不同的浏览器窗口大小 移动端图片处理 指定图像宽度时使用相对单位,防止意外溢出视口,如 width: 50%

    8010

    布局常用解决方案对比(媒体查询、百分比、rem和vwvh)

    使用@media媒体查询可以针对不同的媒体类型定义不同的样式,特别是响应式页面,可以针对不同屏幕的大小,编写多套样式,从而达到自适应的效果。...百分比单位缺点 从上述对于百分比单位的介绍我们很容易看出如果全部使用百分比单位来实现响应式的布局,有明显的以下两个缺点: (1)计算困难,如果我们要定义一个元素的宽度和高度,按照设计稿,必须换算成百分比单位...这种情况下: 1 rem = 10px 2.通过rem来实现响应式布局 rem单位都是相对于根元素html的font-size来决定大小的,根元素的font-size相当于提供了一个基准,当页面的size...发生变化时,只需要改变font-size的值,那么以rem为固定单位的元素的大小也会发生响应的变化。...rem单位在国外的一些网站也有使用,这里所说的rem来实现布局的缺点,或者说是小缺陷是: 在响应式布局中,必须通过js来动态控制根元素font-size的大小。

    2.1K40

    前端基础知识概述 -- 移动端开发的屏幕、图像、字体与布局的兼容适配

    也就是:按比例还原设计稿 假设我们现在拿到标注为 375*667 的大小的设计稿,其中一个元素的标注如下: 以页面宽度为基准的话,那么, 元素的宽度为:209/375 = 55.73% 元素的高度为:80.../375 = 21.33% 元素的上左右边距依次计算......每个允许使用百分比值的属性,同时也要定义百分比值参照的那个量。这个量可以是相同元素的另一个属性的值,也可以是祖先元素的某个属性的值,甚至是格式化上下文的一个度量(比如包含块的宽度)。...具体来说: 宽度(width)、间距(maring/padding)支持百分比值,但默认的相对参考值是包含块的宽度; 高度(height)百分比的大小是相对其父级元素高的大小; 边框(border...= 21.33vw 元素的上左右边距依次计算...

    3.1K32

    rem适配移动端的原理及应用场景

    ; 如果根元素设置成font-size=1rem;则根元素换成px就是相对于初始字体大小,一般是12px; 2.3、vm/vh vw :视口宽度的 1/100;vh :视口高度的 1/100 —— MDN...这个还不太一样,不过一般设置: 代码以显示网页的屏幕宽度定义了视窗宽度...可以用一个比例来计算:如设计稿宽度为750px,某个元素量得75px,那么: 75px/750px = 计算所得rem/10rem,所以计算所得rem=75px;所以我们在样式中写width:1rem;...它和响应式布局不一样,响应式布局强调不同屏幕要有不同的显示,比如媒体查询。...字体并不合适使用rem, 字体的大小和字体宽度,并不成线性关系,所以字体大小不能使用rem;由于设置了根元素字体的大小,会影响所有没有设置字体大小的元素,因为字体大小是会继承的,难道要每个元素都显示设置字体大小

    1.7K20

    前端工程师之移动端布局方案

    因为市面上的手机宽度比并不是一定的,千万别按照宽度来计算高度的百分比,而是应该按照高度来计算,其他参照参考以上表格 1.2 弹性布局 弹性盒布局是 CSS3 中的一种新布局模式,可以轻松地创建响应式网站布局...计算方式实际上与百分基本一致,不过多了一个优势,就是参照系没有百分比那么复杂 vh/vw 布局优点 纯 CSS 移动端适配方案,不存在脚本依赖问题 相对于 rem 以根元素字体大小的倍数定义元素大小,逻辑清晰简单...,视口单位依赖于视口的尺寸 "1vw = 1/100 viewport width",根据 视口尺寸的百分比来定义元素宽度 vh/vw 布局缺点 存在一些兼容性问题,Android 4.4 以下不支持...一个页面上,元素的宽度设置上有百分比,也有 rem,字体的样式中有 rem,有 em,也有固定大小的 px;在屏幕宽度过大时不再缩放,也会用到媒体查询,并且响应式设计更多地可能是针对不同设备间的自适应...,以利用 @media 规则为主要手段,而自适应则忽略@media 以比例布局为主,目的是适应不同的浏览器窗口大小 移动端图片处理 指定图像宽度时使用相对单位,防止意外溢出视口,如 width: 50%

    6610

    移动端布局方案

    因为市面上的手机宽度比并不是一定的,千万别按照宽度来计算高度的百分比,而是应该按照高度来计算,其他参照参考以上表格 1.2 弹性布局 弹性盒布局是 CSS3 中的一种新布局模式,可以轻松地创建响应式网站布局...计算方式实际上与百分基本一致,不过多了一个优势,就是参照系没有百分比那么复杂 vh/vw 布局优点 纯 CSS 移动端适配方案,不存在脚本依赖问题 相对于 rem 以根元素字体大小的倍数定义元素大小,逻辑清晰简单...,视口单位依赖于视口的尺寸 "1vw = 1/100 viewport width",根据 视口尺寸的百分比来定义元素宽度 vh/vw 布局缺点 存在一些兼容性问题,Android 4.4 以下不支持...一个页面上,元素的宽度设置上有百分比,也有 rem,字体的样式中有 rem,有 em,也有固定大小的 px;在屏幕宽度过大时不再缩放,也会用到媒体查询,并且响应式设计更多地可能是针对不同设备间的自适应...,以利用 @media 规则为主要手段,而自适应则忽略@media 以比例布局为主,目的是适应不同的浏览器窗口大小 移动端图片处理 指定图像宽度时使用相对单位,防止意外溢出视口,如 width: 50%

    13010

    CSS Viewport 单位,很多人还不知道使用它来快速布局!

    简介 根据CSS规范,视口百分比单位相对于初始包含块的大小,它是web页面的根元素。 视口单位为:vw,vh,vmin和vmax。 vw单位表示根元素宽度的百分比。1vw等于视口宽度的1%。...假设我们有一个元素与以下CSS: .element { width: 50vw; } 当视口宽度为500px时,50vw计算如下 width = 500*50% = 250px 视口高度 vh单位表示根元素高度的百分比...我们有一个横屏手机,其中有一个元素具有vmin单元。在这种情况下,值将根据视口高度计算,因为它小于宽度。...视口单位基于页面的根元素,而百分比则基于它们所在的容器。因此,它们彼此不同,但各自都有各自的用处。 视口单位的用例 字体大小 ? CSS 视口单位非常适合响应式排版。...纵横比 我们可以使用vw单位创建响应元素,以保持其纵横比,而不管视口大小如何。 首先,需要先确定所需的纵横比,对于此示例,使用9/16。

    3.3K30
    领券