欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > WEB开发 > css3案例分享 >

CSS中flex - grow属性的用法详解(附代码)

发布时间:2019-05-24  编辑:杨雨个人博客网站   点击:   

本篇文章我们将使用Flexbox中的flex-grow属性来实现当框架的宽度包装并且变得大于不必要的宽度时加宽框架宽度时的行为。

使用flex-grow属性指定当Flexbox中的框架宽度大于不必要的宽度时框架宽度的宽度。

语法:

flex-grow :(数量)

代码示例:

flex-grow.Html

<!DOCTYPE Html>
<Html>
<head>    
<meta charset="utf-8" />    
<title></title>  
<link rel="stylesheet" href="flex-grow.Css" />
</head>
<body>  
<div class="container">
    <div class="frameA">第一个内容<br/>杨雨个人博客<br />杨雨个人博客</div>
    <div class="frameB">第二个内容<br />杨雨个人博客<br /></div>
    <div class="frameC">第三个内容<br />杨雨个人博客<br />杨雨个人博客</div>
    <div class="frameD">第四个内容<br />杨雨个人博客<br />杨雨个人博客</div>
    <div class="frameE">第五个内容<br />杨雨个人博客<br />杨雨个人博客</div>
  </div>
</body>
</Html>

flex-grow.Css

.container {
    display: flex;
}
.frameA {
    border: 1px solid #e9006b;
    flex-grow: 5;
}
.frameB {
    border: 1px solid #ff6a00;
    flex-grow: 4;
}
.frameC {
    border: 1px solid #d0b106;
    flex-grow: 3;
}
.frameD {
    border: 1px solid #4aae20;
    flex-grow: 2;
}
.frameE {
    border: 1px solid #01b9b3;
    flex-grow: 1;
}

说明:

我们将frame-A flex-grow设置为5,frame B flex-grow to 4,frame C flex-grow 3,frame D flex-2 to frameE flex-grow 1。使用此设置,即使框架的宽度变得宽于显示文本所需的宽度,框架的宽度也会进一步扩大。在这种情况下,帧的延伸程度,frameA:frameB:frame C:frame D:frameE = 5:4:3:2:1的比率扩展

显示结果

使用Web浏览器显示上述HTML文件。将显示如下所示的屏幕。当窗口宽度较窄时,每个帧都以相同的宽度显示。

360截图20181109092627824.jpg


增加窗口宽度。在需要包装以在框架中显示文本的状态下,框架的宽度仍然以相同的宽度显示。

360截图20181109092522184.jpg

在框内的文本显示不需要的宽度时,以相同的宽度显示。

360截图20181109092914398.jpg

如果将窗口大小加宽到超出显示框架而不包装文本所需的宽度,则每个框架的大小会扩大。帧大小增加是frameA:frameB:frameC:frameD:frameE = 5:4:3:2:1比率。

360截图20181109093019823.jpg

只在一个框中设置flex-grow属性

将CSS代码更改为以下内容并仅设置一个flex-grow属性。

flex-grow.Css

.container {
    display: flex;
}
.frameA {
    border: 1px solid #e9006b;
    flex-grow: 1;
}
.frameB {
    border: 1px solid #ff6a00;
}
.frameC {
    border: 1px solid #d0b106;
}

.frameD {
    border: 1px solid #4aae20;
}
.frameE {
    border: 1px solid #01b9b3;
}

使用Web浏览器显示页面。当窗口宽度较窄时,显示的帧宽度与前一种情况相同。

360截图20181109093849410.jpg

增加Web浏览器窗口宽度。在显示时需要换行的状态下,每帧的宽度相同。

360截图20181109092627824.jpg

进一步增加窗口大小。显示文本的宽度,而不会在中间打断。

360截图20181109093504220.jpg

进一步加宽窗口宽度。具有flex-grow属性的frame-A进一步增加了宽度,但是未指定flex-grow属性的其他边框的宽度保持不变。

360截图20181109093944114.jpg

即使进一步加宽窗口宽度,只有frameA具有更宽的宽度。 本文地址:http://itbyc.com/web/css3/20084.html
转载请注明出处。

分享是一种快乐,也是一种美德:
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1