divのアスペクト比を維持できるこのCSSコードが見つかりました。親のアスペクト比に関係なくdivの縦横比を維持する
.container {
width: 100%;
height: 100%;
background-color: red;
position: absolute;
}
.wrapper {
width: 100%;
/* whatever width you want */
display: inline-block;
position: relative;
top: 50%;
transform: translate(0%, -50%);
}
.wrapper:after {
padding-top: 56.25%;
/* 16:9 ratio */
display: block;
content: '';
}
.main {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
/* fill parent */
background-color: deepskyblue;
/* let's see it! */
color: white;
}
このJSFiddle例を参照してください。私は、親のアスペクト比よりも広い場合であっても、このアスペクト比を維持する(VW又はVHを使用せずに)、CSSのみのソリューションを希望https://jsfiddle.net/1uyo07tg/3/
を質問(この場合、16:9)。
つまり、親(.container)が16:9よりも広く伸びていても、青色のdivが16:9の比率になるようにしたいと思います。
明確化 - 私は、垂直方向と水平方向中心に、一定の割合で、常に滞在DIVの子供を持つように、いくつかのCSSのみのソリューションをしたいと思い、どんなに親のdivのサイズやアスペクト比、およびVWを使用せず、vh。私はこれが(私が持っている)JSコードを必要としていると確信していますが、誰かがCSS専用のきちんとしたトリックを持っているかどうかを見たいと思っていました。
ボトムライン - CSSでのみthisの機能を探していますが、vhまたはvwはありません。
希望があります。 アイデア
事前のおかげで、 Sa'ar
青いコンテナの上と下に2つのdivを使用して、そこに永久に保管してみませんか?あなたが求めているのはアスペクト比のコンセプトです。 – Aslam
は、明確化の質問を更新 – Saariko
あなたが持っているJSソリューションを私たちと共有することができます。物事をより明確にするでしょう。 – Aslam