怎么制作HTML5頁面讓它適應電腦和手機的尺寸?
1、 利用meta標簽
Meta標簽主要用來描述一個HTML網(wǎng)頁文檔的屬性,如作者、日期時間、網(wǎng)頁描述、關鍵詞、頁面刷新等,它的Description和Keywords屬性,可加入網(wǎng)站的關鍵字,讓網(wǎng)頁利于搜索引擎。
meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/
解釋:Viewport指用戶網(wǎng)頁的可視區(qū)域,content中的“width”指的是虛擬窗口寬度,上面代碼意為虛擬窗口/頁面寬度初始比例為1,最小比例為1,最大比例為1,用戶不可擴展,頁面不可縮放。
以上標簽只支持一種尺寸,正確的做法是用js動態(tài)生成下面標簽,前提是要先獲取屏幕尺寸。
script type="text/javascript"
var phoneWidth = parseInt(window.screen.width);
var phoneScale = phoneWidth/640;
var ua = navigator.userAgent;
if (/Android (d+.d+)/.test(ua)){var version = parseFloat(RegExp.$1);
if(version2.3){ document.write(‘meta name="viewport" content="width=640, minimum-scale = ‘+phoneScale+‘, maximum-scale = ‘+phoneScale+‘, target-densitydpi=device-dpi"‘); }
else{document.write(‘meta name="viewport" content="width=640, target-densitydpi=device-dpi"‘); }
else { document.write(‘meta name="viewport" content="width=640, user-scalable=no, target-densitydpi=device-dpi"‘); }
/script
2、百分比法
CSS中的百分比中指的是相對于父元素的寬度。子元素的padding-left:50%,父元素的寬度是百,子元素的margin-top:20%,那么父元素的高是百。body默認寬度是屏幕寬度(PC中指的是瀏覽器寬度)子孫元素按百分比定位(或指定尺寸)就可以了。但這只適合布局簡單的頁面,復雜的頁面實現(xiàn)很困難。
3、 使用CSS3單位rem
在頁面載入開始時首先判斷window的寬度(是window的寬度($(window).width()),不是屏幕分辯率的寬度(screen.width),兩者差別請自行查閱),假設寬度為W,一個div在寬度為640px的設計稿的下的寬度為dW1,如果html的font-size為100px,那么這個div的寬度用rem表示是多少呢?
計算:div寬度dW2=dW1/100,px與rem之間換算除以100就可以,這是假定屏幕寬度為640的,而不同寬度的屏幕怎么處理,為了能保證換算容易那就要為html設置一個合適的font-size,計算:100 / 640 = fontSize / W, fontSize = W / 640 * 100 = W / 6.4。大多數(shù)瀏覽器font-size的最小值為12px,所以只能用100作為縮放比例。
所以會在頭部加上這個JS代碼:
script type="text/javascript"
var html = document.querySelector(‘html‘);
var rem = html.offsetWidth / 6.4;
html.style.fontSize = rem + "px";
/script
4、 媒體查詢
021yin.com /user/register.php?s=hyc
以上幾種方法,僅供大家參考。如有不妥,歡迎指正。制作自適應頁面需要比較好的編程基礎和技術覺悟,一般的小白,不建議大家為了做自適應網(wǎng)頁專門學習HTML5、CSS3和JS,畢竟這并非一朝一夕就能學會的。如果技術小白想做自適應網(wǎng)頁,這里給大家提供一種思路,用建站寶盒。完全不需要編程基礎,全程拖拽,一樣能做出讓人驚艷的自適應網(wǎng)站?,F(xiàn)在還有免費建站活動,無論外行內行,大家可以注冊體驗一下。