<div class="parent">
<div class="child1">
question
</div>
<div class="child2">
somethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomething
<div class="parent">
<div class="child1">
question
</div>
<div class="child3">
somethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomething
</div>
</div>
[〜#〜] css [〜#〜]
.parent{
width:100%;
display:flex;
flex-direction:row;
flex-wrap:nowrap;
padding:1em;
background-color:red;
box-sizing:border-box;
}
.child1{
background-color:mistyrose;
padding:1em;
}
.child2{
background-color:powderblue;
padding:.5em;
Word-wrap:break-Word;
max-width:500px;
}
.child3{
background-color:powderblue;
padding:.5em;
Word-wrap:break-Word;
}
上記のコードの主な問題は、child3
オーバーフローですが、max-width
でchild2
を指定しても、parent
はオーバーフローしません。どちらの場合も、Word-wrap: break-Word;
を使用しました
ここでコードを確認できますhttp://jsfiddle.net/vbj10x4k/
max-width/width
を使用してピクセル値を固定せずにそれが発生する理由と解決方法を知る必要があります。応答する必要があります。
フレックスアイテムの最大幅を設定する代わりに、最小幅の宣言を使用します。
デフォルトでは、最小幅が設定されていない場合、アイテムのコンテンツの最小幅が想定され、フレックスアイテムの幅は決して小さくなりません。最小幅を設定するなど。 40%、アイテムはフレックス親の最大40%に縮小します。
.child2, .child3 {
min-width: 40%;
}
.parent{
width:100%;
display:flex;
flex-direction:row;
flex-wrap:nowrap;
padding:1em;
background-color:red;
box-sizing:border-box;
}
.child1{
background-color:mistyrose;
padding:1em;
}
.child2{
background-color:powderblue;
padding:.5em;
Word-wrap: break-Word;
overflow-wrap: break-Word;
min-width: 40%;
}
.child3{
background-color:lightyellow;
padding:.5em;
Word-wrap: break-Word;
overflow-wrap: break-Word;
min-width: 40%;
}
<div class="parent">
<div class="child1">
question
</div>
<div class="child2">
somethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomethingsomething
</div>
<div class="child3">
Works well with long URLs: <a href="#"> https://thisisadamnlongurlcontainingneitherhyphensoradditionalperiods.com</a>
</div>
</div>
上記のコードスニペットまたは外部デモを参照してください: http://jsfiddle.net/vbj10x4k/5/
の代わりに Word-wrap:break-Word
つかいます Word-break:break-all
[〜#〜] css [〜#〜]
.child1{
background-color:mistyrose;
padding:1em;
Word-break:break-all;
}
.child2{
background-color:powderblue;
padding:.5em;
max-width:500px;
Word-break:break-all;
}
.child3{
background-color:powderblue;
padding:.5em;
Word-break:break-all;
}
ここに作業フィドルリンクがあります http://jsfiddle.net/yudi/vbj10x4k/3/
このような組み合わせを使用していますが、Chrome、Safari、Firefoxで動作します。
.myOverflowableText {
Word-break: break-Word; /* Chrome, Safari */
overflow-wrap: anywhere; /* Firefox */
}
このサイトでは、Chrome&Safari https://caniuse.com/#feat=Word-break でWord-breakがサポートされています。
しかし、Firefoxのソリューションはoverflow-wrap: anywhere
このサイトでは: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-wrap
IEまだ...おそらくWord-wrap: break-Word;
IEで動作しますか?
私の目標はこれです:
Hello this is some |
text. I am writing |
some text. |
Especially long |
words go to the |
next line like |
this. This is a |
veryveryveryveryve |
ryveryverylongword |
. |