国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

利用onresize使得div可以隨著屏幕大小而自適應的代碼

2019-11-21 00:48:30
字體:
來源:轉載
供稿:網友
當我們讓div居中時候,一般有兩種方法,一種是固定左右寬度,也就是使用像素絕對定位;另一種是用百分比來相對定位,在這種兩種方式下,絕對定位是不能讓div隨著屏幕而自適應的,而用百分比就可以,但是,是用百分比就會有一個新的問題,如果我們的頁面中有這么一句
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
的時候,top的百分比將會失效,而刪除這句話的時候,一切正常,都是不知道這句標準的聲明為什么會帶來如此的不便
針對這個問題,我使用的下面的方法來實現div的自適應
首先 我用的是絕對定位的方式,先設置好div的左右上下邊距。在body中添加兩個事件,
<body bgcolor="#666666" onresize="test()" onload="getwah()">
getwah()用來獲取屏幕的大小和div的各個邊距,并計算出它們的差
復制代碼 代碼如下:

var height,width,width_cha1,width_cha2;
function getwah()
{
if(document.documentElement && document.documentElement.clientWidth)
{d_width = document.documentElement.clientWidth;}
else if(document.body)
{d_width = document.body.clientWidth;}
width=parseInt(d_width);
width_cha1=width-parseInt(document.getElementById("backi").style.left)
width_cha2=width-parseInt(document.getElementById("massage_box").style.left)
}

當屏幕大小變化的時候(onresize)觸發test()函數,該函數就是用戶根據之前獲得屏幕與邊距的差值重新設置div的邊距,這樣就可以實現黨屏幕的大小改變后,div的邊距也會相應地改變,從而實現div可以隨著屏幕大小的改變而自適應
復制代碼 代碼如下:

function test()
{
if(document.documentElement && document.documentElement.clientWidth)
{d_width = document.documentElement.clientWidth;}
else if(document.body)
{d_width = document.body.clientWidth;}
var now_left1=parseInt(d_width )-width_cha1;
var now_left2=parseInt(d_width )-width_cha2;
document.getElementById("backi").style.left=now_left1
document.getElementById("massage_box").style.left=now_left2
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 崇仁县| 阿克苏市| 石首市| 景谷| 郯城县| 资中县| 延安市| 隆子县| 平湖市| 海淀区| 光山县| 闻喜县| 山东省| 大余县| 堆龙德庆县| 于田县| 成安县| 东莞市| 凌云县| 通许县| 友谊县| 东乌| 洞口县| 扶沟县| 长宁县| 镇康县| 莱阳市| 长寿区| 合肥市| 芒康县| 芦溪县| 玛曲县| 库伦旗| 大关县| 嘉峪关市| 合水县| 遵义市| 民权县| 太原市| 石景山区| 祥云县|