Home  >  Article  >  Web Front-end  >  Detailed explanation of the usage of flex-grow attribute in CSS (with code)

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

不言
不言Original
2018-11-09 09:41:274136browse

In this article we will use the flex-grow property in Flexbox to implement the behavior of widening the width of the frame when the width of the frame wraps and becomes larger than necessary.

Use the flex-grow property to specify the width of the frame width in Flexbox when it is wider than necessary.

Syntax:

flex-grow :(数量)

Code example:

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/>php中文网<br />php中文网</div>
    <div class="frameB">第二个内容<br />php中文网<br /></div>
    <div class="frameC">第三个内容<br />php中文网<br />php中文网</div>
    <div class="frameD">第四个内容<br />php中文网<br />php中文网</div>
    <div class="frameE">第五个内容<br />php中文网<br />php中文网</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;
}

Instructions:

We set frame-A flex-grow to 5, frame B flex-grow to 4, frame C flex-grow 3, frame D flex-2 to frameE flex-grow 1 . With this setting, the width of the frame will expand further even if it becomes wider than necessary to display the text. In this case, the extent of frame extension, frameA:frameB:frame C:frame D:frameE = 5:4:3:2:1 ratio extension

Display results

Use a web browser to display the above HTML file. The screen shown below will be displayed. When the window width is narrow, each frame is displayed with the same width.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)


Increase the window width. In states where wrapping is required to display text in a frame, the width of the frame is still displayed at the same width.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

#When the text inside the box displays an unnecessary width, display it with the same width.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

If you widen the window size beyond the width required to display the frames without wrapping text, the size of each frame will expand. The frame size increase is frameA:frameB:frameC:frameD:frameE = 5:4:3:2:1 ratio.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

Set the flex-grow property in only one box

Change the CSS code to the following and set only one flex-grow property.

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;
}

Use a web browser to display the page. When the window width is narrower, the displayed frame width is the same as in the previous case.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

Increase the web browser window width. In the state where line wrapping is required during display, the width of each frame is the same.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

Further increase the window size. Shows the width of the text without breaking in the middle.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

Further widen the window width. Frame-A with the flex-grow property has its width further increased, but the width of other borders without the flex-grow property specified remains the same.

Detailed explanation of the usage of flex-grow attribute in CSS (with code)

# Even if the window width is further widened, only frameA has a wider width.

The above is the detailed content of Detailed explanation of the usage of flex-grow attribute in CSS (with code). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn