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

首頁 > 編程 > JavaScript > 正文

IE6 fixed的完美解決方案

2019-11-20 23:53:05
字體:
來源:轉載
供稿:網友
第一種方法:純CSS
目前網上有的比較多的是這種解決方案(純CSS):
復制代碼 代碼如下:

html{overflow:hidden;}
body{height:100%;overflow:auto;}
#rightform form{position:absolute;right:30px;top50px;}

  這個方法有一個bug未解決:在IE6下會把所有position:absolute都變成“浮動”的元素;還有使用js方法滾動滾動條時會出現對象閃爍,如下方法結合了CSS和js的辦法,解決了以上的問題。
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>IE6 fixed</title>
<style type="text/css">
*
{
margin: 0px;
padding: 0px;
}
body {
_background-image: url(about:blank); /*用瀏覽器空白頁面作為背景*/
_background-attachment: fixed; /* prevent screen flash in IE6 確保滾動條滾動時,元素不閃動*/
}
#topNav {
width: 980px;
z-index: 100; /*設置浮動層次*/
overflow: visible;
position: fixed;
top: 50px; /* 其他瀏覽器下定位,在這里可設置坐標*/
_position: absolute; /*IE6 用absolute模擬fixed*/
_top: expression(documentElement.scrollTop + 50 + "px"); /*IE6 動態設置top位置*/
/* documentElement.scrollTop 設置浮動元素始終在瀏覽器最頂,可以加一個數值達到排版效果 */
background-color:#0000FF;
height: 31px;
}
.show{
position:absolute;
top:500px;
left:400px;
border:#ff0000 1px solid;
}
</style>
</head>
<body>
<div class="jd_menu" id="topNav">1111</div>
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<div class="show">show</div>
</body>
</html>

只實現了垂直方向的fixed。若要實現水平方向的fixed,設置_left:expression(documentElement.scrollLeft + "px");
  利用給<body>設置固定的背景,防止滾動條滾動時的閃動;如果<body>中要設置滾動的背景而產生沖突,可以把代碼寫在html選擇器里面,如:
復制代碼 代碼如下:

html {
_background-image: url(about:blank);
_background-attachment: fixed; /* prevent screen flash in IE6 */
}
body {
background-image: url(1.jpg);
background-attachment: scroll;
}

第二種方法 JavaScript
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
body{ margin:0px; padding:0px; font-size:12px; line-height:22px;}
p{ margin:0px; padding:36px;}
.float2{ position:absolute; padding:26px; border:#999999 3px solid; background-color:#3399FF; right:200px; top:200px;}
.fixed{ position:absolute; right:60px; top:100px; border:#666666 3px solid; background-color:#CCCCCC; padding:26px;}
</style>
<script language="javascript" type="text/javascript">
window.onload=function(){
var n=100; //top值
var obj=document.getElementById("fixed"); //position:fixed對象
window.onscroll=function(){obj.style.top=(document.body.scrollTop||document.documentElement.scrollTop)+n+'px';}
window.onresize=function(){obj.style.top=(document.body.scrollTop||document.documentElement.scrollTop)+n+'px';}
}
</script>
<title>position_fixed測試</title>
</head>
<body>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<p>測試內容.........</p>
<div class="float2">浮動的內容2</div>
<div class="fixed" id="fixed">我的位置是固定的!拉動滾動條看效果。</div>
</body>
</html>

ie6對postion:fixed的完美解決方案
今天去一老外站看到了這他站上的十分平滑但卻沒有js,好奇,原來。。巧妙啊,分享下,相對而言比較節省資源。但效果好,使用方便,兼顧w3c。哈哈
<!-- compliance patch for microsoft browsers -->
<!--[if lt IE 7]><link rel="stylesheet" href="ie-stuff.css" type="text/css" media="screen"/><![endif]-->
ie-stuff.css
復制代碼 代碼如下:

#footer {
position: absolute;
bottom: auto;
clear: both;
top:expression(eval(document.compatMode &&
document.compatMode=='CSS1Compat') ?
documentElement.scrollTop
+(documentElement.clientHeight-this.clientHeight) - 1
: document.body.scrollTop
+(document.body.clientHeight-this.clientHeight) - 1);
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浦江县| 澎湖县| 多伦县| 清水河县| 通化县| 海阳市| 阿城市| 屯昌县| 土默特左旗| 深泽县| 临江市| 南部县| 横峰县| 文登市| 丽江市| 廉江市| 泉州市| 锡林郭勒盟| 满城县| 临泽县| 宿州市| 庆阳市| 睢宁县| 安岳县| 临猗县| 安义县| 山阳县| 井陉县| 西丰县| 靖安县| 武山县| 安仁县| 静海县| 龙里县| 涞源县| 宁蒗| 张家口市| 阿克| 林西县| 上杭县| 商丘市|