溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

css絕對(duì)定位怎么在不同分辨率下的電腦正常顯示定位位置

發(fā)布時(shí)間:2021-06-25 15:39:24 來(lái)源:億速云 閱讀:177 作者:小新 欄目:web開(kāi)發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)css絕對(duì)定位怎么在不同分辨率下的電腦正常顯示定位位置,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

首先要明白如下幾個(gè)原理:

1、筆記本電腦的分辨率一般為1366*768附近,PC電腦的分辨率一般為 1920*1080;

以下為常見(jiàn)電腦分辨率:

css絕對(duì)定位怎么在不同分辨率下的電腦正常顯示定位位置

當(dāng)寫網(wǎng)頁(yè)時(shí),如果在1920這樣的大分辨率寫好之后,再去小分辨率的筆記本看同樣的這個(gè)網(wǎng)頁(yè),會(huì)發(fā)現(xiàn),筆記本電腦顯示的基本為寬屏大顯示器下網(wǎng)頁(yè)放大至1.5倍左右的展示效果。

2、為了頁(yè)面在不同的分辨率下正常顯示,要給頁(yè)面一個(gè)安全寬度,一般在做1920px寬的頁(yè)面時(shí),中間要有一個(gè)1200px左右的安全寬度,并且居中,所有的內(nèi)容要寫在這個(gè)寬度的box里,如果有背景圖或者輪播圖必須通欄整個(gè)頁(yè)面的時(shí)候,一定要設(shè)置成居中對(duì)齊,這樣當(dāng)分辨率降低之后,背景圖或者Banner圖左右、中間1200寬度的盒子依然居中對(duì)齊,不會(huì)出現(xiàn)向左向右偏離。

盒子里的div等小盒子可以用百分比來(lái)表示,來(lái)達(dá)到頁(yè)面自適應(yīng)。

絕對(duì)定位的使用:

       絕對(duì)定位的時(shí)候,該元素的父元素一定要記得設(shè)為相對(duì)定位,這樣在不同分辨率下定位才不會(huì)錯(cuò)亂,但是前提是這個(gè)父元素在一個(gè)安全的寬度里面,如果這個(gè)父元素本身是一個(gè)會(huì)因?yàn)榉直媛式档投淖兊脑兀瑒t定位一定會(huì)跟著亂。

在布局頁(yè)面結(jié)構(gòu)的時(shí)候,一些box框架是必不可少的,比如1200px安全寬度的div。

例如:做一個(gè)活動(dòng)頁(yè)面,其中這個(gè)頁(yè)面背景為一個(gè)大圖,在這個(gè)大圖上要放一些小圖來(lái)與大圖實(shí)現(xiàn)定位,絕對(duì)不能以大圖直接作為背景!

而是在放大圖背景的div里繼續(xù)放一個(gè)安全寬度div,再把它作為父元素做相對(duì)定位,給里面的子元素做絕對(duì)定位,這樣就不會(huì)出現(xiàn)不同分辨率下絕對(duì)定位錯(cuò)亂的問(wèn)題了。

通過(guò)總結(jié)網(wǎng)友經(jīng)驗(yàn),通過(guò)加zoom屬性,可以讓頁(yè)面某個(gè)區(qū)塊根據(jù)分辨率不同進(jìn)行自動(dòng)縮放到合適區(qū)域,但是有個(gè)bug,就是火狐瀏覽器打死都不支持這個(gè)屬性,即使用transform:scale(x,y);屬性也于事無(wú)補(bǔ)。還有一個(gè)小問(wèn)題,在頁(yè)面加載慢的時(shí)候重新刷新頁(yè)面會(huì)先顯示放大的效果,再變?yōu)榭s小后的效果,會(huì)閃一下,這個(gè)還沒(méi)找到解決辦法,希望懂的朋友們多多交流。

zoom代碼如下:

$(function(){        var w=window.screen.width;        var zoom=w/1920;

$("#container").css({
        "zoom",zoom,
        "-moz-transform":"scale("+zoom+")",
      "-moz-transform-origin":"top left"
      });
 });

zoom:當(dāng)前屏幕分辨率寬度/1920;

zoom屬性的瀏覽器支持性:

css絕對(duì)定位怎么在不同分辨率下的電腦正常顯示定位位置

結(jié)果是:除了firefox以外,其他瀏覽器可以正常支持zoom屬性,并且頁(yè)面需要縮放的區(qū)塊整體縮放到了適應(yīng)當(dāng)前分辨率的效果,而transform:scale 則是先把頁(yè)面顯示為已經(jīng)把原本頁(yè)面放大后再使用scale,則該縮小相當(dāng)于當(dāng)前頁(yè)面下縮小的效果了,兩邊自然會(huì)留白。

關(guān)于“css絕對(duì)定位怎么在不同分辨率下的電腦正常顯示定位位置”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

css
AI