当社の製品の新しいUIを開発しており、デバイスがモバイルかデスクトップかに応じて2つの<div>
タグを切り替える必要があります。各<div>
にはモバイルまたはデスクトップ用の適切なコンテンツが含まれますが、HTMLページは1つのみであるため、もう1つをオフにしながら<div>
をオンにする必要があります。CSSを使用して画面解像度に基づいて2つのDIVを切り替える
この質問は、this SO questionのフォローアップのようなもので、私がここで尋ねているのと非常に似ています。
<div class="visible-phone">
content for phone
</div>
<div class="visible-desktop">
content for desktop
</div>
およびいずれかの最大値または最小画面解像度採用2つのCSSルールがあります:そこに見つかったソリューションをおさらいするには、2つの<div>
のある
.visible-phone{
@media (max-width: 480px) { more css }
}
.visible-desktop{
@media (min-width: 768px) { more css }
}
がポイントに到達するためには、考えます最小幅が700px、最大幅が900pxのデバイス。これは、上記のCSSロジックのクラックを通り過ぎ、<div>
が見えなくなります。別の例として、500px〜750pxの範囲のデバイスも対象となりません。
参照回答の弱点を避けるために完全な方法を提案する人はいますか?ここでCSSベースのソリューションが好まれるでしょう。
範囲のメディアクエリをその間に追加し、表示するコンテンツを決定する(またはタブレットの追加コンテンツを作成する)。 – Paul
@Paulこれは巧妙な考えですが、悪魔の主張者を演奏させてください。 3番目のメディアクエリとして(480,768)を追加したとします。しかし、今では(450,700)の範囲にあるデバイスは、再びカバーされません。誰もがこのメディアの質問のものを煮詰めて、明らかに精神的な苦痛を楽しんだ:-) –
それはなぜ覆われないのでしょうか?さまざまな要因に応じて、例えば、ポートレート(450)から風景(700)モードへの回転時など、異なる「div」を表示します。 – Paul