I had an easy layout using flexbox.
.wrap {
display: flex;
justify-content: space-between;
width: 100vw;
}
.wrap .left,
.wrap .right {
flex: 1;
}
.wrap .left {
background: blue;
}
.wrap .right {
background: green;
}
<div class="wrap">
<div class="left">hello!</div>
<div class="right">world!</div>
</div>
This layout overflows the flex container, if the flex item has long text.
.wrap {
display: flex;
justify-content: space-between;
width: 100vw;
border: 3px solid red;
}
.wrap .left,
.wrap .right {
flex: 1;
}
.wrap .left {
background: blue;
}
.wrap .right {
background: green;
}
<div class="wrap">
<div class="left">hello!</div>
<div class="right">world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!</div>
</div>
So I used the overflow-wrap property. But it did not work.
.wrap {
display: flex;
justify-content: space-between;
width: 100vw;
border: 3px solid red;
overflow-wrap: break-word; /* add */
}
.wrap .left,
.wrap .right {
flex: 1;
}
.wrap .left {
background: blue;
}
.wrap .right {
background: green;
}
<div class="wrap">
<div class="left">hello!</div>
<div class="right">world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!</div>
</div>
Strangely, "word-break" with the same role as "overflow-wrap" worked fine. ("word-break: break-word;" does not work with Firefox, it works on Chrome)
.wrap {
display: flex;
justify-content: space-between;
width: 100vw;
border: 3px solid red;
word-break: break-word; /* add */
}
.wrap .left,
.wrap .right {
flex: 1;
}
.wrap .left {
background: blue;
}
.wrap .right {
background: green;
}
<div class="wrap">
<div class="left">hello!</div>
<div class="right">world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!world!</div>
</div>
What is the difference between "word-break" and "word-wrap"? From the W3C document, we could not find any differences related to the above behavior.
I read two sections of CSS Text Module Level 3.