::after
CSS擬似要素のセンタリングに問題があります。主要素が画像である:CSS CSSの疑似要素
- 画像はページの中央
- 画像キャプションを示す
::after
擬似要素であるべきで、画像の中央にオーバーレイされるべきです。ここで
私が持っているものです。
#frame {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: black;
&: after {
content: 'Caption overlay';
color: white;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
<div id="frame">
<svg width="200" height="200">...</svg>
</div>
画像フレームが正しくページの中央に配置されますが、そのキャプションは、画像上の中心にされていません。代わりに右下にあります。
ありがとうございました。それはほぼ完璧です。 divをオーバーフローさせても、キャプション全体を強制的に1行に表示する方法はありますか? – BeetleJuice
はい、可能です。これを行うには、white-space:nowrapを追加します。 :after擬似要素。 –