日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

四、移动适配

發布時間:2025/3/21 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 四、移动适配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

四、移動適配

文章目錄

  • 四、移動適配
    • 移動端適配
      • viewpoint視口
      • 媒體查詢
    • 參考文章

移動端適配

移動端Web頁面,即常說的H5頁面、手機頁面、webview頁面;

手機設備屏幕尺寸不一,做移動端的Web頁面,需要考慮安卓/IOS的各種尺寸設備上的兼容,針對移動端設備的頁面,設計與前端實現怎樣做能更好地適配不同屏幕寬度的移動設備;

移動端適配的目的:在不同尺寸的手機設備上,頁面“相對性的達到合理的展示”或者“保持統一效果的等比縮放”;

viewpoint視口

  • visual viewport:可見視口,即屏幕寬度;
  • layout viewport:布局視口,即DOM寬度;
  • idea viewport:理想適口,使布局視口就是可見視口;
  • visual viewport = layout viewport * scale
  • 獲取屏幕寬度(visual viewport)的尺寸:window. innerWidth/Height
  • 獲取DOM寬度(layout viewport)的尺寸:document. documentElement. clientWidth/Height

移動設備默認的 viewport 是 layout viewport,而我們想要的是 idea viewpoint,我們通過使用 meta 標簽來實現我們想要的效果。

meta viewport 標簽首先是由蘋果公司在其safari瀏覽器中引入的,目的就是解決移動設備的viewport問題。后來安卓以及各大瀏覽器廠商也都紛紛效仿,引入對meta viewport的支持,事實也證明這個東西還是非常有用的。

在蘋果的規范中,meta viewport 有6個屬性:

  • width:設置layout viewport 的寬度,為一個正整數,或字符串"width-device";
  • initial-scale:設置頁面的初始縮放值,為一個數字,可以帶小數;
  • minimum-scale:允許用戶的最小縮放值,為一個數字,可以帶小數;
  • maximum-scale:允許用戶的最大縮放值,為一個數字,可以帶小數;
  • height:設置layout viewport的高度,這個屬性對我們并不重要,很少使用;
  • user-scalable:是否允許用戶進行縮放,值為"no"或"yes", no 代表不允許,yes代表允許;

理想視口中的網頁用戶最理想的寬度,用戶進入頁面的時候不需要縮放。很明顯,所謂的理想寬度就是瀏覽器(屏幕)的寬度了。

<meta name="viewport" content="width=device-width">

然而,這段代碼其實也并不完美,在IE瀏覽器中,由于橫屏豎屏的切換會對其造成影響,為了解決這個兼容性的問題,再加上一句。

<meta name="viewport" content="width=device-width,initial-scale=1">

width=device-width 可以把布局視口設置成為瀏覽器(屏幕)的寬度。initial-scale=1 的意思是初始縮放的比例是1,使用它的時候,同時也會將布局視口的尺寸設置為縮放后的尺寸。

加了這行代碼,頁面的寬度就會跟要適配的設備寬度一致啦。

媒體查詢

媒體指的就是各種設備(移動設備,PC設備),查詢指的是要檢測屬于哪種設備。媒體查詢的目的是通過查詢當前設備屬于哪種設備,讓網頁能夠在不同的設備下正常的預覽。

@media 可以針對不同的屏幕尺寸設置不同的樣式,特別是如果你需要設置設計響應式的頁面,@media 是非常有用的。當你重置瀏覽器大小的過程中,頁面也會根據瀏覽器的寬度和高度重新渲染頁面。

我們將不同的設備劃分為不同的類型,媒體類型一共分為四類:

  • screen(電腦屏幕,平板電腦,智能手機)
  • speech(屏幕閱讀器等發聲設備)
  • print(打印設備)
  • all(所有的設備)
  • 媒體特性用來描述設備的特點,以下是常用的媒體特性:

    • width 網頁顯示區域完全等于設置的寬度
    • height 網頁顯示區域完全等于設置的高度
    • max-width / max-height 網頁顯示區域小于等于設置的寬度
    • min-width / min-width 網頁顯示區域大于等于設置的寬度
    • orientation: portrait (豎屏模式) | landscape (橫屏模式)

    語法關鍵字可以將媒體類型和媒體特性鏈接到一塊,進行設備檢測。

    • and 可以將多個媒體特性鏈接到一塊,相當于且
    • not 排除某個媒體特性 相當于非,可以省略
    • only 指定某個特定的媒體類型, 可以省略

    媒體查詢的語法分為外聯式語法和內聯式語法。外聯式語法是將 media 在 head 部分引用,內聯式語法是將 media 在中引用。

    • 外聯式語法:
    <link rel="stylesheet" type="text/css" href="" media="screen"> <link rel="stylesheet" type="text/css" href="" media="print"> <link rel="stylesheet" type="text/css" href="" media="all"> <link rel="stylesheet" type="text/css" href="01.css" media="only screen and (max-width: 420px)">
    • 內聯式語法:
    <style type="text/css">@media screen {選擇器{屬性:屬性值;}} </style>

    一個簡單的媒體查詢實例:

    <!DOCTYPE html> <html> <head><title>媒體適配</title><meta charset="utf-8"><style>div{width: 600px;height: 600px;background-color: red;}@media (max-width: 800px) {div{width: 500px;height: 500px;background-color: yellow;}}@media (max-width: 500px) {div{width: 300px;height: 300px;background-color: blue;}}</style> </head> <body><div></div> </body> </html>

    當屏幕寬度大于800時,顯示一個600*600的大紅塊

    小于或等于800時,顯示一個500*500的黃色div。

    同理,屏幕寬度小于等于500時,顯示一個300*300的藍色div

    參考文章

    移動端適配方案

    前端移動端適配總結

    響應式布局之媒體查詢功能

    什么是媒體查詢?

    總結

    以上是生活随笔為你收集整理的四、移动适配的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。