以下のスニペットでは、スパンに最大幅%10を割り当てて、最も外側のコンテナdivの100%実際のボディ幅の%。最も外側のコンテナに対する幅を割り当てることができません
しかし、コンテナの幅はコンテンツによって決まるので、制限のないテキストを含むスパンの幅の10%のようです。
希望の出力を得るにはどうすればよいですか?
jsfiddleリンク:スパンの幅についてhttps://jsfiddle.net/68ha60p6/
html,body{
width:100%;
height:100%;
padding:0;
margin:0;
}
<div style="float:right; height:100%;padding-right:1%">
<button style="display:inline-block; height:70%;background-color:green; color:white;border:none; padding:0;">
<span style="display:inline-block; max-width:10%; text-overflow:ellipses;overflow:hidden; max-height:100%;text-align:center;white-space:no-wrap;">John John</span>
</button>
</div>
</div>
内容によって決まりません。パーセンテージ次元は、すぐに含まれる親のサイズに基づいて計算されます。この場合、直前にスパンの親を含むボタンがボタンなので、そのスパンはその10%に設定されています。 – Ryan
@Ryanボタンの幅はどのように決まっていますか? –
ほとんどのブラウザには、何も指定されていない空白のボタンがレンダリングされるフォールバックのデフォルトのスタイルがありますが、ブラウザによって異なる場合があります。その内容が必要な場合は、ボタンも伸びます。この場合、スタイリングはありません。そのコンテンツはボタン幅の10%に設定されているため、ブラウザのデフォルト設定になっています。スパンがボタンのあるdivの幅の10%になるように探している場合は、ボタンの外側になるようにスパンを移動してみてください。 – Ryan