モバイル側のデバイス幅が異なり、画面の縦幅が比較的小さいため、PC 側の固定幅および中央揃えのテクニカル レイアウトとは異なり、通常は全画面形式でレイアウトされます。フルスクリーンを使用するため、さまざまなパーセントテクニックが特に重要です。実際の戦闘プロセスで使用されるいくつかのテクニックについて簡単に説明します。
さまざまなテクノロジーの比較を容易にするために、同じ 4 つの等しいフルスクリーン要件を達成するために異なるテクノロジーを使用し、各部分を正方形に分割します。
全体的な HTML 構造は次のとおりです:
// `list--xxx`表示下面具体技术的名字ul.full-list.list--xxx .item*4
視覚的に見やすくするために、奇数項目と偶数項目の背景色を異なるように設定します:
.full-list .item{ background: #f5f5f5;}.full-list .item:nth-child(2n){ background: #ccc;}.full-list .item:hover{ background: #f00;}
デモ効果については、以下を参照してください: モバイルでのパーセント幅のいくつかの実装
これは、新しい一連の単位には、合計 4 つの vw、vh、vmin、vmax があり、それぞれウィンドウの幅、ウィンドウの高さ、ウィンドウの幅と高さの最小値、最大値を表します。ウィンドウの幅と高さ。現在、Android 4.3 ではサポートされていませんが、iOS では十分にサポートされています。詳しくは、caniuse vw を参照してください。
1vw はウィンドウ幅の 1 パーセントを表します。同様に、10vw は 10 パーセントを表します。この新しい部門の出現により、私たちの W3C 組織もモバイル端末の割合を懸念していることが分かりました。上記の 4 分の 1 の場合、それぞれの幅は 25vw である必要があり、ul の list--xxx は list--vw になります。
そうですか
それは確かに、問題を数分で解決します。ただ、Android 側はまだ少し互換性がなく、対処するのが難しいですが、未来は明るいと信じています。rem
js は HTML のフォント サイズを設定します
.list--vw{ overflow: hidden;}.list--vw .item{ float: left; width: 25vw; height: 25vw;}
document.addEventListener("DOMContentLoaded", function(event) { document.documentElement.style.fontSize = window.innerWidth/10 + "px"; });
lib-flexible については data-dpr という概念もありますので、興味があれば勉強してみてください。ただし、個人的には、この機能は iOS の Retina 画面の 1px を実現する以外には少し役に立たないと感じています。メディアクエリを使えば解決できるので、そのフォントサイズの考え方だけを採用します。
私たちのフロントエンド業界にこのような優れたソリューションを作成してくれた Xiashatao に感謝します。
flex とパーセント
コードに直接移動します:
.list--rem{ overflow: hidden;}.list--rem .item{ float: left; width: 2.5rem; height: 2.5rem;}
もちろん、均等割り算のみを実装する必要がある場合は、display:table も良い選択です。コードは次のとおりです:
.list--flex{ display: flex;}.list--flex .item{ flex: 1; padding-top: 25%; height: 0;}.list--percent{ overflow: hidden;}.list--percent .item{ float: left; width: 25%; height: 0; padding-top: 25%;}