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

深入理解Flex布局 -- flex-grow & flex-shrink & flex-basis

我希望实现一个左中右三布局,其中左右部分固定宽度,中间部分自适应: 实现起来很简单,代码如下: left<...但遇到中间部分内容很长时候,UI 就变形了: 为了固定住左右部分宽度,需要给 left 和 right 加上flex-shrink: 0。...-- 宽度为800px内容--> long right ...codepen 在这里 flex-basis(默认值 auto) flex-basis指定项目占据主轴空间,如果不设置,等于内容本身空间: 四、总结 本文从问题出发,讲解了Flex布局在实战中应用...,并深入到flex-grow,flex-shrink和flex-basis细节,描述了项目空间在填充和溢出情况下计算方式,希望对你有所帮助。

1.6K20

CSS 基础系列:常见布局方式

但不要忘记了我们给它设置了浮动 —— 浮动元素具有包裹性,在不显式设置宽度情况下由内容撑开。这里如果不设置 100% 宽度,且里面没有足够内容,那么会导致布局崩坏。...3.1.3 缺点; 如果其中一内容高度拉长,其他两背景并不会自动填充(后面介绍等高布局可以解决这个问题) 3.2 双飞翼布局: 双飞翼布局在圣杯布局基础上进一步优化,解决了圣杯布局错乱问题,实现了内容与布局分离...对于圣杯布局,它是利用盒子左右 padding 确保将主内容挤到中间,在效果上表现为三个独立;对于双飞翼布局,它是在主里放置一个子盒子,利用子盒子左右 margin 确保内容位于中间,在效果上表现为左右两在主列上面...给各个子元素设置一个大数值 padding-bottom,再设置相同数值 margin-bottom,并给总盒子设置 overflow:hidden,把溢出背景切掉。...假设某一高度最大,盒子高度会等于这一高度,而其他本来留白部分由带背景色 padding 补偿。

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

每天10个前端小知识 【Day 18】

:规定当文本溢出时,显示省略符号来代表被修剪文本 white-space:设置文字在一行显示,不能换行 overflow:文字长度超出限定宽度,隐藏超出内容 overflow设为hidden,...需要注意是,如果文本为一段很长英文或者数字,则需要添加word-wrap: break-word属性。 2.flexbox(弹性盒布局模型)是什么,适用什么场景?...border box)左边相接触(从右向左格式的话,相反),即使存在浮动 浮动盒区域不会和 BFC 重叠 计算 BFC 高度时,浮动元素也会参与计算 应用 自适应两布局 防止外边距(margin...但是,如果CSS支持了选择器,那就必须要页面所有子元素加载完毕才能渲染HTML文档,因为所谓“选择器”,就是后代元素影响祖先元素,如果后代元素还没加载处理,如何影响祖先元素样式?...但是,如果支持选择器,整个文档不能有阻塞,页面的可访问性则要大大降低。 有人可能会说,要不采取加载到哪里就渲染到哪里策略?

10710

web前端学习摘要。

语义:无明确含义,通常就是代表“盒子”;应用:根据布局需要,可以使用到任何地方,可以用id和class来对进行定义或区分。...A:如果元素只包含浮动元素,那么在未设置高度同时,元素高度坍塌为零。 解决“塌陷”办法: step 1. 创建一个用来清除浮动CSS样式类(.clearfix) step 2....针对包裹全是浮动元素级容器使用(.clearfix) 如下:相当于在元素中补一个内容,然后再做清除。...(默认值) hidden 溢出内容被隐藏,无法查看 scroll 无论内容是否溢出,容器都被添加滚动条。(溢出才激活) auto 当内容溢出时,容器边缘(纵向)出现滚动条。...如果同时定义了类型和图像,图像优先。 实际应用原则: 1. 使用盒子模型属性来精确控制列表 2.

3.6K30

一文带你响应式网页设计入门

content="width=device-width,initial-scale=1"/> CSS媒体查询 如果您不熟悉响应式Web设计,媒体查询是第一个要学习最重要CSS功能。...下面是移动优先样式常见用例示例,其中对于较小设备,宽度为100%,但在较大视口中,宽度为50%。...我们设置main标签设置为flex-wrap: wrap,这个设置为允许其内部子节点在节点中换行, flex-basis: 100% 是指我们div节点宽度是相对于节点宽度100%(图1)。...使用内容溢出滚动条进行水平滚动 可能会有这样一种情况:您内容溢出界面,而没有一种优雅处理方式去解决。没关系,内容溢出滚动条可以为你解决这个问题。 此技术常见用途包括可滚动菜单和表格。...最后,宽度和高度为100%会使子级iframe元素成为其父级100%。级.videoWrapper完全控制建立此宽高比布局。

4.7K20

几种常见CSS布局

自适应布局是指一内容撑开,另一撑满剩余宽度布局方式 1.float+overflow:hidden 如果是普通布局,浮动+普通元素margin便可以实现,但如果是自适应布局,...③ 缺点 center部分最小宽度不能小于left部分宽度,否则会left部分掉到下一行 如果其中一内容高度拉长(如下图),其他两背景并不会自动填充。...两种布局方式不同之处在于如何处理中间主位置: 圣杯布局是利用容器左、右内边距+两个从相对定位; 双飞翼布局是把主嵌套在一个新级块中利用主左、右外边距进行布局调整 四、等高布局 等高布局是指子元素在元素中高度相等布局方式...,再设置相同数值 margin-bottom,并在所有外面加上一个容器,并设置 overflow:hidden 把溢出背景切掉。...这也是为了防止负 margin 导致 footer 覆盖任何实际内容。 于2019.1.2重新修改,如果觉得文章对你有些许帮助,欢迎在我GitHub博客点赞和关注,感激不尽!

85820

几种常见 CSS 布局

自适应布局是指一内容撑开,另一撑满剩余宽度布局方式 1.float+overflow:hidden 如果是普通布局,浮动+普通元素margin便可以实现,但如果是自适应布局,...③ 缺点 center部分最小宽度不能小于left部分宽度,否则会left部分掉到下一行 如果其中一内容高度拉长(如下图),其他两背景并不会自动填充。...两种布局方式不同之处在于如何处理中间主位置: 圣杯布局是利用容器左、右内边距+两个从相对定位; 双飞翼布局是把主嵌套在一个新级块中利用主左、右外边距进行布局调整 四、等高布局 等高布局是指子元素在元素中高度相等布局方式...,再设置相同数值 margin-bottom,并在所有外面加上一个容器,并设置 overflow:hidden 把溢出背景切掉。...这也是为了防止负 margin 导致 footer 覆盖任何实际内容。 于2019.1.2重新修改,如果觉得文章对你有些许帮助,欢迎在我GitHub博客点赞和关注,感激不尽!

88720

03-移动端开发教程-CSS3新特性(下)

如果一个项目的flex-shrink属性为0,其他项目都为1,空间不足时,前者不缩小。 注意:负值对该属性无效。 ?...假定:这5个子项比例为1:1:1:1:2,多出来400px要被分为6份,于是我们可以计算子项将被移除溢出量是多少: flex-basis为400px,被移除溢出量:400/6*2,即约等于133.33px...默认值为auto,表示继承元素align-items属性,如果没有元素,等同于stretch。...,类似于border,区别是不占用任何空间,因此设了column-rule不会导致变化。...默认值auto各高度随内容自动调整,balance所有高都设为最高高 下一篇内容预告: web在线字体 css3兼容处理 移动web开发基础

1.4K130

03-移动端开发教程-CSS3新特性(下)

如果一个项目的flex-shrink属性为0,其他项目都为1,空间不足时,前者不缩小。 > 注意:负值对该属性无效。...假定:这5个子项比例为1:1:1:1:2,多出来400px要被分为6份,于是我们可以计算子项将被移除溢出量是多少: flex-basis为400px,被移除溢出量:400/6*2,即约等于133.33px...默认值为auto,表示继承元素align-items属性,如果没有元素,等同于stretch。...,类似于border,区别是不占用任何空间,因此设了column-rule不会导致变化。...默认值auto各高度随内容自动调整,balance所有高都设为最高高 下一篇内容预告: web在线字体 css3兼容处理 移动web开发基础 联系老马 对应视频地址:https://qtxh.ke.qq.com

1.3K00

容易被误解overflow:hidden

如果认真阅读一下css规范,会发现overflow:hidden其实并不一定隐藏溢出内容。...overflow:hidden并不隐藏所有溢出子元素 对于overflow:hidden最大误解时:当一个具有高度和宽度中至少一项容器应用了overflow:hidden时,其内部任何溢出内容都将被剪裁...但如果后代元素包含块是整个视区(通常指浏览器内容可视区域,可以理解为body)或者是该容器(定义了overflow元素)级元素时,则不受影响。 即使是我重新整理过语言,还是感觉有点绕。...这个大家其实比较熟悉,一个绝对定位元素,其包含块是最近拥有relative或者absolute定位属性祖先元素,如果任何一级祖先元素都不符合,其包含块是body元素(更正:浏览器内容区域)。...(2012-09-05: 如果给body元素指定宽高且不指定position:relative,body也不是绝对定位子元素包含块。

3.3K110

最全常见css布局

自适应布局是指一内容撑开,另一撑满剩余宽度布局方式 1.float+overflow:hidden 如果是普通布局,浮动+普通元素 margin便可以实现,但如果是自适应布局...当内容溢出时会自动撑开元素。...③ 缺点 center 部分最小宽度不能小于 left 部分宽度,否则会 left 部分掉到下一行 如果其中一内容高度拉长(如下图),其他两背景并不会自动填充。...两种布局方式不同之处在于如何处理中间主位置: 圣杯布局是利用容器左、右内边距+两个从相对定位; 双飞翼布局是把主嵌套在一个新级块中利用主左、右外边距进行布局调整 四、等高布局 等高布局是指子元素在元素中高度相等布局方式...这也是为了防止负 margin 导致 footer 覆盖任何实际内容

1.6K10

Angular Material 设计之美

基于这套工具集,我们可以很容易搭建和 MD 风格相统一界面。 极简 API Angular Material 官方文档可能稍微不太友好,总感觉内容很多,看不进去。... 最后可以根据自己需求调整一下样式。...表格 Angular Material 表格是我见过最特殊表格,结构简洁,通过定义动态渲染数据,以下是一个官网例子: <table mat-table [dataSource]="dataSource...mat-table 对表格首选操控方式是 CSS,起初我对这种方式也存在疑虑,但是在我亲自封装了 ng-zorro-antd 表格组件之后,我发现一切都很自然。...任何组件库都无法满足所有业务需求,如果你无法在 Angular Material 中找到可用组件,你可以尝试第三方组件,或者可以将 ng-zorro-antd 按模块单独引入。

5K30

CSS 单多行文本溢出样式

单行文本溢出省略 核心 CSS 语句 overflow: hidden; 文字长度超出限定宽度,截断超出内容 white-space: nowrap; 规定段落中文本不进行换行 text-overflow...: ellipsis; 文本溢出时,用省略号来代替 Demo div { width: 150px; height: 50px; border: 1px solid red;...这是一段很长文本这是一段很长文本 效果图 多行文本溢出省略 核心语句 -webkit-line-clamp: 2; 限制在一个块元素显示文本行数,2 表示最多显示两行...; 和 1 结合使用,将对象作为弹性伸缩盒子模型显示 overflow: hidden; 文字长度超出限定宽度,截断超出内容 text-overflow: ellipsis; 文本溢出时,用省略号来代替...> 这是一段很长文本这是一段很长文本这是一段很长文本 效果图 这样就很容易实现了多行文本溢出显示省略号效果,不过这个方案有个不好点就是兼容性不好

1.7K30

前端系列第4集-解释下浮动和它工作原理,清除浮动方法

比如,我们可以使用浮动来实现一个左侧导航栏、右侧主体内容页面布局。 浮动工作原理很简单。当一个元素设置为浮动后,它会尝试尽可能地向左或者向右移动,直到遇到包含它容器边界或者其他浮动元素。...这样可以强制容器元素包含浮动元素,并且不会出现溢出情况。...,但是需要注意如果网页中存在大量浮动元素,使用JavaScript来清除浮动可能会对性能产生影响。...需要注意是,浮动元素只会影响其后同级元素。 举个例子,你可以为一个图片元素设置 float: left,这会使图片沿容器左侧浮动,同时后面的文本会环绕这个图片。...这会使该元素不允许出现在浮动元素旁边,从而实现清除浮动效果。 使用伪元素:这是一种常用自动清除浮动方法。

29020

css(2)

,默认第一个参数控制上下,第二个参数控制左右,如果写三个参数第一个控制上,第二个控制左右,第三个控制下,如果四个全写控制顺序为上、右、下、左(顺时针)。...浮动常用三种方式:l left 向左浮动 right 向有浮动 none 默认值,不浮动 1.8.1浮动带来影响 会使浮动框标签塌陷,就是当边框是标签时,如果子标签设置为浮动,外边框就会塌陷成一条线...溢出属性 溢出发生原因是标签文本内容太多,标签尺寸放不下这么多内容,导致标签文本内容溢出。...auto 如果内容被修剪,浏览器会显示滚动条以便查看其余内容。 inherit 规定应该从父元素继承 overflow 属性值。...已经定位过指的是这个标签position不是static状态。 重点:如果级设置了position属性,例如position:relative;,那么子元素就会以左上角为原始点进行定位。

1.4K20

Web前端进阶高薪必会54个CSS重难点知识梳理(1)

第一层比较:找第一等级选择器 ,如果有以这个样式为主 ,如果没有,看第二等级选择器 第二层比较:找第二等级选择器 ,个数多权重最高,如果都没有,看第三等级选择器。...第三层比较:找第三等级选择器 ,个数多权重最高,如果都没有,看第四等级选择器。 第四层比较:找第四等级选择器 ,个数多权重最高,如果都没有,看第五等级选择器。...第五层比较:找五等级选择器 ,个数多权重最高,如果都没有,看第六等级选择器 第六层比较:找六等级选择器 ,个数多权重最高,如果都没有,看是否继承元素样式。...并且只要元素隐藏,子孙没有任何办法可见 子孙元素全部不可见,但是给子孙加上 visibility: visible;时,子孙可见。 事件触发 不触发 不触发 9、伪元素与伪类区别和作用?...这3层结构计算规则具体如下 (1)如果没有CSS尺寸和HTML尺寸,使用固有尺寸作为最终宽高。 (2)如果没有CSS尺寸,使用HTML尺寸作为最终宽高。

1.7K00

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券