ホームページ >ウェブフロントエンド >H5 チュートリアル >モバイルページを携帯電話の画面に適応させるための HTML5 メソッド
1. メタ タグを使用します: viewport
理論的には、このタグを使用するとすべての画面サイズに適応できますが、このタグの解釈とサポートはデバイスごとに異なります。 、すべてのブラウザまたはシステムと互換性があるわけではありません。
ビューポートは、ユーザーのWebページの表示領域です。中国語に訳すと「視界」となります。
モバイルブラウザは、仮想「ウィンドウ」(ビューポート) にページを配置します。通常、この仮想「ウィンドウ」(ビューポート) は画面よりも広いため、各 Web ページを小さなウィンドウに押し込む必要はありません (これにより、モバイル ブラウザー用に最適化されていない Web ページのレイアウトを壊すなど)、ユーザーがパンやズームして Web ページのさまざまな部分を表示できるようになります。
Viewport タグとその属性:
<meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
各属性の詳細な紹介:
属性名 | 値 | 説明 |
---|---|---|
幅 | 正の整数またはデバイス幅 | 定義ビュービューポートの幅 (ピクセル単位) |
高さ | 正の整数またはデバイスの高さ | ビューポートの高さをピクセル単位で定義します。通常は使用されません |
initial-scale | [0.0-10.0] | 初期スケーリング値を定義します |
minimum-scale | [0.0-10.0] | 最小スケーリングを定義します。最大スケール設定以下である必要があります |
maximum-scale | [0.0 -10.0] | 最大ズーム率を定義します。最小スケール設定以上である必要があります |
ユーザースケーラブル | はい/いいえ | ユーザーが手動でページをズームできるかどうかを定義します。デフォルト値はyesです |
2、使用css3单位rem
rem是CSS3新增的一个相对单位(root em,根em),使用rem为元素设定字体大小时,是相对大小,但相对的只是HTML根元素。通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。
目前,除了IE8及更早版本外,所有浏览器均已支持rem。对于不支持它的浏览器多写一个绝对单位的声明。这些浏览器会忽略用rem设定的字体大小。下面就是一个例子:
p {font-size:14px; font-size:.875rem;}
默认html的font-size是16px,即1rem=16px,如果某p宽度为32px你可以设为2rem。
通常情况下,为了便于计算数值则使用62.5%,即默认的10px作为基数。当然这个基数可以为任何数值,视具体情况而定。设置方法如下:
Html{font-size:62.5%(10/16*100%)}
具体不同屏幕下的规则定义,即基数的定义方式:可以通过CSS定义,不同宽度范围里定义不同的基数值,当然也可以通过js一次定义方法如下:
<script type="text/javascript"> (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function () { var clientWidth = docEl.clientWidth; if (!clientWidth) return; docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';//其中“20”根据你设置的html的font-size属性值做适当的变化 }; if (!doc.addEventListener) return; win.addEventListener(resizeEvt, recalc, false); doc.addEventListener('DOMContentLoaded', recalc, false); })(document, window);</script>
3、使用媒体查询
媒体查询也是css3的方法,我们要解决的问题是适应手机屏幕,这个媒体查询正是为解决这个问题而生。
媒体查询的功能就是为不同的媒体设置不同的css样式,这里的“媒体”包括页面尺寸,设备屏幕尺寸等。
例如:如果浏览器窗口小于 500px, 背景将变为浅蓝色:
@media only screen and (max-width: 500px) { body { background-color: lightblue; }}
4、使用百分比
百分比指的是父元素,所有百分比都是这样的。子元素宽度50%,那么父元素的宽度就是100%;
所以body默认宽度是屏幕宽度(PC中指的是浏览器宽度)子孙元素按百分比定位(或指定尺寸)就可以了,这只适合布局简单的页面,复杂的页面实现很困难。
相关推荐:
以上がモバイルページを携帯電話の画面に適応させるための HTML5 メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。