HTML5頁(yè)面移動(dòng)端自適應(yīng)布局的實(shí)現(xiàn)示例代碼

2020-05-22 17:11:36 來(lái)源:互聯(lián)網(wǎng)作者:佚名 人氣: 次閱讀 77 條評(píng)論

文章主要介紹了html5移動(dòng)端自適應(yīng)布局的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。場(chǎng)景:為適應(yīng)各種大小的屏幕自適應(yīng)布局我知道的兩種...

文章主要介紹了html5移動(dòng)端自適應(yīng)布局的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

場(chǎng)景:為適應(yīng)各種大小的屏幕

自適應(yīng)布局我知道的兩種方式

1.使用媒體查詢(xún),下面制定了幾種適應(yīng)方式,例如第一個(gè)表示屏幕寬度在320px-360px之間的,html字體大小適配為13.65px

<style>
???@media only screen and (max-width: 360px) and (min-width: 320px){
????html{
?????font-size:13.65px;
????}
???}
???@media only screen and (max-width: 375px) and (min-width: 360px){
????html{
?????font-size:23.4375px;
????}
???}
???@media only screen and (max-width: 390px) and (min-width: 375px){
????html{
?????font-size:23.4375px;
????}
???}
???@media only screen and (max-width: 414px) and (min-width: 390px){
????html{
?????font-size:17.64px;
????}
???}
???@media only screen and (max-width: 640px) and (min-width: 414px){
????html{
?????font-size:17.664px;
????}
???}
???@media screen and (min-width: 640px){
????html{
?????font-size:27.31px;
????}
???}
??</style>

2.響應(yīng)式,獲取到屏幕的寬度,計(jì)算出一定的比例大小,使用rem代替px,在使用的時(shí)候如 font-size:1rem,在不同屏幕大小的手機(jī)上展示的大小效果是不一樣的,和手機(jī)屏幕的大小比例自適應(yīng)

<script>
???(function(doc, win) {
????var docEl = doc.documentElement, //根元素html
?????//判斷窗口有沒(méi)有orientationchange這個(gè)方法,有就賦值給一個(gè)變量,沒(méi)有就返回resize方法。
?????resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
?????recalc = function() {
??????var clientWidth = docEl.clientWidth;
??????if(!clientWidth) return;
??????//把document的fontSize大小設(shè)置成跟窗口成一定比例的大小,從而實(shí)現(xiàn)響應(yīng)式效果。
??????if(clientWidth >= 640) {
???????clientWidth = 640;
??????}
??????docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
??????console.log(clientWidth);
??????console.log(docEl.style.fontSize);
?????};
?????recalc();
????if(!doc.addEventListener) return;
????win.addEventListener(resizeEvt, recalc, false); //addEventListener事件方法接受三個(gè)參數(shù):第一個(gè)是事件名稱(chēng)比如點(diǎn)擊事件onclick,第二個(gè)是要執(zhí)行的函數(shù),第三個(gè)是布爾值
????doc.addEventListener('DOMContentLoaded', recalc, false) //綁定瀏覽器縮放與加載時(shí)間
???})(document, window);
??</script>
<div id="div2" class="text" style="border: 0.04rem solid #ccc; height: 14rem;font-size: 0.5rem;">

到此這篇關(guān)于html5移動(dòng)端自適應(yīng)布局的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)html5移動(dòng)端自適應(yīng) 內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章