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

每个高级前端工程师都应该知道前端布局

如果元素顶部和底部设置了百分比,它将相对于父元素高度,并直接进行非静态定位(默认定位)。同样,如果元素左侧和右侧设置了百分比,它将与父元素宽度直接非静态定位(默认定位)相对应。...如果子元素 padding 和 margin 设置百分比,无论是垂直还是水平,它们都是相对于直接父元素宽度而言,与父元素高度无关。...响应式缺点:如果有太多样式需要在浏览器尺寸发生变化时进行更改,那么多套样式代码非常麻烦。...4.3 Rem responsive 布局 rem 通常用于适应移动终端,页面根据分为 10 个部分。...4.4 VW、VH 响应式布局 因为 100vw = 100 视图窗口宽度,100vh = 100 视图窗口高度,那么根据 750 设计草案,100vw 就是 750。

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

ipad上100vh和100%踩坑记「建议收藏」

另一种方法是:监听一个事件,比如我监听就是scroll事件,对会发生隐藏元素设置scrollIntoView或者scrollIntoViewIfNeeded,通过设置不同参数,可以使得作用元素与上面或下面对齐...其实是比大,即100vh包含了下面的状态栏高度。...另外,如上面的代码所示,父元素设置了display:flex, 元素设置了flex: 1,按理说,元素设置了这个属性之后,就和父元素宽高相同了,但是要注意,在这里,元素还设置了position:...我们看一下W3C文档怎么说 即,flex容器绝对定位子元素会脱离flex布局流,也就是说flex: 1对元素来说已经失效了。...因此他高度绝对定位中100%设置高度,但是又设置了overflow:hidden,因此才会在虚拟键盘隐藏时出现一部分空白,从而导致了导航条隐藏。

1.1K10

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

单位基于页面的根元素,而百分比则基于它们所在容器。因此,它们彼此不同,但各自都有各自用处。 单位用例 字体大小 ? CSS 单位非常适合响应式排版。...2.第二种解决方案:Flexbox和单位(推荐) 通过100vh设置body元素高度,然后可以使用flexbox来使main元素占用剩余空间。...从容器中挣脱出来 我注意到一个用例最适合编辑版面。 一个元素,即使父元素宽度受到限制,它也会占据100%宽度。 考虑下面: ?...1.添加 width: 100vw 最重要一步,图像宽度设置100%。 ?...流行顶部边框 你知道大多数网站使用顶部边框吗? 通常,它颜色与品牌颜色相同,这会赋予一些个性。 ? 我们支持边框初始值3px。 如何固定值转换为对象?下面是如何计算它等效vw。

3.2K30

2022 年 CSS 全览

容器查询 在 @container 之前,网页元素只能响应整个大小。这对于大型布局非常有用,但对于外部容器不是整个小型布局,布局不可能进行相应调整。...在移动设备上,加载页面时,会显示带有 url 状态栏,此栏会占用部分空间。在几秒钟和一些交互之后,状态栏可能会滑开,以便用户提供更大体验。...以下是新变体提供所有新单位选项完整列表: /* 高度单位 */ .new-height-viewport-units { height: 100vh; height: 100dvh...考虑一个组件,它希望在不同父级上下文中调整自己,而不是父组件拥有样式并更改组件: /* parent owns this, adjusting children */ section:focus-within...通常这意味着深色主题样式出现在浅色主题之后;这将浅色设置默认样式,深色设置可选样式。

4.2K20

Chrome 108 :发布新 CSS 布局单位!

vw 和 vh 中较小值 vmax : 选取 vw 和 vh 中较大值 如果我们一个元素宽度设置 100vw 高度设置 100vh,它将完全覆盖视觉: 这些单位有很好浏览器兼容性,...但是,在移动设备上表现就差强人意了,移动设备大小会受动态工具栏(例如地址栏和标签栏)存在与否影响。大小可能会更改,但 vw 和 vh 大小不会。...因此,尺寸过大 100vh 元素可能会从口中溢出。 当网页向下滚动时,这些动态工具栏可能又会自动缩回。在这种状态下,尺寸 100vh 元素又可以覆盖整个。...代表 Small Viewport 单位以 sv 前缀:svw、svh、svi、svb、svmin、svmax。 除非调整本身大小,否则这些百分比单位大小是固定。...当动态工具栏被缩回时,动态等于大大小。 相应,它单位以 dv 前缀:dvw, dvh, dvi, dvb, dvmin, dvmax。

1.5K20

盘点:响应式布局5种实现方式

响应式设计通过检测分辨率,针对不同客户端在客户端做代码处理,来展现不同布局和内容; 响应式布局 5 种实现方案 百分比布局 媒体查询布局 rem 响应式布局 vw 响应式布局 flex 弹性布局...但是 padding、border、margin 等属性情况又不一样 1、元素 top 和 bottom 如果设置百分比,则相对于直接非 static 定位(默认定位)父元素高度,同样,元素...四、vw、vh 响应式布局 vw 和 vh 分别相对是视图窗口宽度和高度。...100vw = 视图窗宽度 ,100vh = 100 视图窗高度 如果移动端有 5 个不同宽尺寸 750 ,640,480,375,320,则在不同尺寸下,对应 1vw px 值如下表 移动端尺寸...是自动应,所以就达到了响应式开发效果。

2K00

【CSS】318- CSS实现宽高等比自适应容器

这里先以高度宽度一半例,也可以是其他任意比例。 一、思考如何实现 这个问题类似于:我们在移动端页面,上面有一张宽度 100% 图片,如果我们没设置高度,则图片会根据原有尺寸,等比缩放。...我们可以借助这个想法,根据元素高度,来元素设置一个相应比例高度即可。...二、实现方法1 - 通过 vw 单位实现 所谓单位(viewport units)是相对于(viewport)尺寸而言, 100vw 等于宽度 100%,即 1vw 等于宽度...三、实现方法2 - 通过元素 padding 实现 通过设置元素 padding 属性来实现,是比较常用,也是效果比较好一种,这里需要理解是:元素 padding 属性百分比值是先对父容器宽度而言...分析: 这里我们容器 .box 宽度设置 200px,元素 .text padding:10% ,因此 .box padding 计算结果 20px; 接下来结合主题,我们利用这个原理

1.1K30

移动端适配必须掌握基本概念和适配方案

=no"> Viewport 属性: 属性 含义 取值 width 定义宽度,单位像素 正整数或 device-width(设备宽度) height 定义高度,单位像素 正整数或 device-height...=1, minimum-scale=1"> 如何合理设置 rem 大小呢?...使用公式:(元素大小 / 设计稿大小)* 100vw 元素大小转换为 vw 单位大小。...当页面需要适应不同屏幕大小以及设备类型时确保元素拥有恰当行为布局方式,提供一种更加有效方式来对一个容器元素进行排列、对齐和分配空白空间。...Flexbox 布局两个基本概念: 容器:弹性布局父元素(display=flex元素)。 项目:弹性布局容器每一个元素。

97940

【复习】CSS实现宽高等比自适应容器

这里先以高度宽度一半例,也可以是其他任意比例。 一、思考如何实现 这个问题类似于:我们在移动端页面,上面有一张宽度 100% 图片,如果我们没设置高度,则图片会根据原有尺寸,等比缩放。...二、实现方法1 - 通过 vw 单位实现 所谓单位(viewport units)是相对于(viewport)尺寸而言,100vw 等于宽度 100%,即 1vw 等于宽度 1%...下面看看这种情况下,图片加载成功和失败对比: [1] 三、实现方法2 - 通过元素 padding 实现 通过设置元素 padding 属性来实现,是比较常用,也是效果比较好一种,这里需要理解是...:元素 padding 属性百分比值是先对父容器宽度而言。....box 宽度设置 200px,元素 .text padding:10% ,因此 .box padding 计算结果 20px; 接下来结合主题,我们利用这个原理,来实现等比例问题:

1.5K00

Clamp()、Max() 和 Min() CSS 函数用例

CSS: .section-image { width: clamp(70px, 80px + 15%, 180px); } 通过设置最小、首选和最大宽度,图像根据其容器宽度缩小或增长,这是由于使用了固定值和百分比...: 首先,我们最小值设置 0%。...条件边界半径 大约一年前,我在 Facebook 提要 CSS 中发现了一个巧妙 CSS 技巧。它是关于使用 CSS max() 比较函数根据宽度卡片半径从 0px 切换到 8px。...9999 是一个很大数字,强制该值 0px 或 8px。 有了上面的内容,当卡片占据整个宽度时,它半径零,或者在更大屏幕上 8px。...间距 有时,我们可能需要根据宽度更改组件或网格间距。不带 CSS 比较功能!我们只需要设置一次。

1.5K20

滚动视差让你不相信“眼见实”

background-attachment CSS 属性决定背景图像位置是在口内固定,还是随着包含它区块滚动。 它一共有三个属性: fixed: 键字表示背景相对于固定。...当然,你可以直接去这里查看:https://codepen.io/jack-cool/pen/zYxzOpb 这里解释下使用transform: translate3d来实现视差滚动原理: 1、给容器设置上...transform-style: preserve-3d和perspective: xpx,那么处于这个容器元素就会处于 3D 空间中; 2、给元素分别设置不同transform: translateZ...(),这时不同元素在 3D Z 轴方向距离屏幕距离也就不一样; 3、滚动滚动条,由于元素设置了不同transform: translateZ(),那么他们滚动上下距离translateY相对屏幕...总结下来就是: 父容器设置transform-style: preserve-3d和perspective: xpx,元素设置不同transform: translateZ() 看完了用 css 实现滚动视差两种方式

2.1K76

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

也就是说在不设置网页viewport情况下,pc端网页默认会以布局基准,在移动端进行展示。因此我们可以明显看出来,默认为布局时,根植于pc端网页在移动端展示很模糊。...标签中我们会将width设置称为device-width,device-width一般是表示分辨率宽,通过width=device-width设置我们就将布局设置成了理想。...3. px与自适应 上述我们了解到了当通过viewport元标签,设置布局理想时,1个css像素可以表示成: 1 CSS像素 = 物理像素/分辨率 我们直到,在pc端布局通常情况下为980px...: image.png 元素初始宽高0,通过padding可以父元素撑大,上图蓝色部分是一个正方形,且边长100px,说明padding不论宽高,如果设置成百分比都相对于父元素width...2. vw单位换算 同样,如果要将px换算成vw单位,很简单,只要确定视图窗口大小(布局),如果我们布局设置成分辨率大小,比如对于iphone6/7 375*667分辨率,那么px可以通过如下方式换算成

1.8K40

web前端常见面试题

标准模式不包含,标准模式下可以通过设置 box-sizing: border-box 标准盒模型转化成怪异模式下盒模型。 怪异模式下,当内容超出容器高度时,会将容器拉伸,而不是溢出。...,是可独立分配、可复用结构,如在发布中,它可能是论坛帖子、杂志或新闻文章、博客、用户提交评论、交互式组件,或者其他独立内容项目; nav 描述一个含有多个超链接区域,该区域包含跳转到其他页面或页面内部其他部分链接列表...; ch 代表元素所用字体 font 中“0”这一字形宽度; vh 1vh 相当于高度 1%,100vh 就是高度; vw 1vw 相当于宽度 1%,100vw 就是宽度; vmax...高度 vw 和宽度 vh 两者中最小值 vmin 高度 vw 和宽度 vh 两种中最大值; % 相对于父级元素大小来确定; 参考:CSS [1] CSS percentage...,可以事件绑定到父元素上,并让节点上发生事件冒泡到父节点上,利用 e.target 属性可以获取到当前触发事件元素。

2.3K20

响应式图像

,不管viewport宽度如何,始终保持相同宽度。...在viewport宽度小于960像素时,使图像宽度viewport宽度75%。当viewport大于960像素时,使图像宽度640像素。 vm ? 当处理宽度时候,%单位更合适。...如果页面延伸超过高度——滚动条出现——视窗宽度将会大于html元素宽度。 因此,如果你一个元素设置100vw,这个元素将会延伸到html和body元素范围之外。...在这个例子中,我用红色边框包裹html元素,然后给section元素设置背景颜色。 ? 因为这个细微差别,当使一个元素横跨整个页面的宽度时,最好使用百分比单位而不是宽度。 2....然而,用vh的话,就像下面写那么简单: .example { height: 100vh; }   不管.example元素如何嵌套,它还是能够相对于视窗尺寸设置大小。

2.5K10

如何决定响应式网站 CSS 单位?

在我们创建适合各种设备响应式网站时,了解正确CSS 单位很重要。不过在深入研究决策之前,让我们先对它们进行分类以便了解它们用途。 如何决定响应式网站 CSS 单位?...% 单位 这用于设置元素宽度,它总是相对于其直接父元素大小。如果没有定义父级,则默认情况下body被视为父级。...如果未覆盖,默认字体大小 16px,假设在父元素中字体大小 48px,那么在元素中 1em == 48px。...所以,如果 1vw == 1% 那么 100vw == 100% 宽度。 让我们考虑以下示例,其中一个子项宽度相对于父项大小,而另一个子项宽度相对于根。...让我们考虑以下示例,其中一个高度与父级大小有关,而另一个高度与根相关。

93910

春眠不觉晓,vh、vw、vmin、vmax 知多少

vw and vh 1vw 等于1/100宽度 (Viewport Width) 1vh 等于1/100高度 (Viewport Height) 综上,一个页面而言,它视窗高度就是 100vh...,宽度就是 100vw 。...这就是 vh 和 vw 单位我们提供。 1vh 等于1/100高度。栗子:浏览器高度900px, 1 vh = 900px/100 = 9 px。...同理,如果宽度750, 1vw = 750px/100 = 7.5 px。 可以想象到,他们有很多很多用途。比如,我们用很简单方法只用一行CSS代码就实现同屏幕等高框。....slide { height: 100vh; } 假设你要来一个和屏幕同宽标题,你只要设置这个标题font-size单位vw,那标题字体大小就会自动根据浏览器宽度进行缩放,以达到字体和

1K20

【学习图片】12.规定性语法

例如:在大口上,带有小中央焦点全宽头图像可能效果很好: 但是,当缩小以适应小视时,图像中央焦点可能会丢失: 这些图像源主题相同,但为了更好地视觉聚焦于该主题,我们希望图像源比例在断点处发生变化...虽然基于口信息高级布局决策是可靠,但它阻止了我们采用完全基于组件层级开发方法,这意味着可以组件放置在页面布局任何部分,并响应组件本身所占用空间样式。...这种情况促使出现了容器查询:一种基于父容器大小而非大小来元素设置样式方法。... 所占用空间而非基于大小来选择 。...在下一个模块中,我们学习如何将我们所学有关图像格式、压缩和响应式图片所有内容集成到现代开发工作流程中。

1.1K20
领券