想通过层的重叠来添加背景,希望能根据浏览器和网页的大小自动调整这个背景层。
#HeadBg
{
position: absolute;
top: 0px;
left: 0px;
width: 100%;
margin: 0px 0px 0px 0px;
height: 80px;
background-color: Gray;
}
以上是我自己的代码,但是这个只能实现根据浏览器的大小自动适应宽度,如果出现横向滚动条,那么当移动滚动条时,就会发现这个背景层的宽度其实只等于浏览器的宽度,所以当滚动条移动时会发现左边一块地方并没有被背景层所填充。现在急求解决办法!
#HeadBg
{
position: absolute;
top: 0px;
left: 0px;
width: 100%;
margin: 0px 0px 0px 0px;
height: 80px;
background-color: Gray;
}
以上是我自己的代码,但是这个只能实现根据浏览器的大小自动适应宽度,如果出现横向滚动条,那么当移动滚动条时,就会发现这个背景层的宽度其实只等于浏览器的宽度,所以当滚动条移动时会发现左边一块地方并没有被背景层所填充。现在急求解决办法!
解决方案 »
- ie7多个选项卡共用一个session怎么解决?
- orcle 查询时日期格式的问题 急++
- 如何将中文大写转化为数字???
- Asp.net2.0 角色与登录控件的问题
- 求助:基于ASP技术的数据结构教学网站方案设计及主页制作
- 如何实现文字聊天室?
- FormView的一个问题
- 我是初学者,怎样学.ASP,以前用过ASP,.ASP中用C#吗
- 怎么将两个 时间变量进行 相减操作,能不能实现?
- treeview问题,点击以后,没有显示在父节点下,怎么办呢?
- A field or property with the name 'JudgeTime' was not found on the selected data source.
- 有谁用过Aspose.Cells.dll,能给一些参考资料吗?最好有示例
{ document.all.HeadBg .style.Width=document.body.scrollWidth;}
else
{document.all.HeadBg .style.Width=window.screen.availWidth;}
{ document.all.HeadBg .style.Width=document.body.scrollWidth;}
else
{document.all.HeadBg .style.Width=window.screen.availWidth;}试试这个,你说的那种情况我遇到过,不过是高度的,用这种方法解决的
{
background: #fff;
font: 12px/22px Verdana,Arial,sans-serif, "Times New Roman" ,宋体;
color: #000;
text-align: center;
width: 100%;
margin: 0px 0px 0px 0px;
}
#HeadBg
{
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 80px;
background-color:Yellow;
z-index: -1;
}
我在aspx中的部分代码<body>
<div id="HeadBg">
</div>
<div id="MainBody">
<form id="form1" runat="server">
</form>
</div>
</body>
这个是关键要考虑的问题
我现在有一个办法,不过不知怎么回事,第一次使用的时候没效果。现在倒挺正常。
<div id="HeadBg">
<img width=970px src=" " height="0"/>
</div>
就是加了一个空的img.
大家看看,这个办法行不行?另外有没有其它办法
if(document.body.scrollWidth>window.screen.availWidth)
{ document.all.HeadBg .style.Width=document.body.scrollWidth;}
else
{document.all.HeadBg .style.Width=window.screen.availWidth;}
还有一个高度指定了吗
document.all.HeadBg .style.Height=window.screen.availHeight
以下是图片:当浏览器大小小于970px,HeadBg那层只能填充浏览器窗口大小
当滚动条移动时就会发现旁边是空白
<script>
if(document.body.scrollWidth>window.screen.availWidth)
{ document.all.HeadBg .style.Width=document.body.scrollWidth;}
else
{document.all.HeadBg .style.Width=window.screen.availWidth;}
</script>然后运行,就和上图那效果一样,不知道是不是还要加什么语句?
document.all.HeadBg .style.Width=window.screen.availWidth
document.all.HeadBg .style.Height=window.screen.availHeight
我改成:document.all.HeadBg.style.Height = "1000px";
或document.all.HeadBg.style.Height = 1000px;
都没反应的。
document.getElementById("HeadBg").style.width=window.screen.availWidth
document.getElementById("HeadBg").style.height=window.screen.availHeight
找到两个原因
第一、放在<head></head>之间,找不到这个id,所以我把它放到HeadBg中去了。
第二,style.Width无法识别,只能识别小写。
郁闷,要求这么严格。
不过你这个虽然可以实现效果,但是有了另一个问题,就是长度太长了,远远超过了970px.不知道是怎么回事
如果只是浏览器大小,用这个window.screen.availWidth ,window.screen.availWidth就行
最好是宽度和高度在减点,宽度减20px(大约滚动条的宽度)就行了,高度减125px左右(IE HeightBAR)
window.screen.availHeight是由很多数据出现滚动条时用的
如果只是浏览器大小,用这个window.screen.height ,window.screen.width就行
最好是宽度和高度在减点,宽度减20px(大约滚动条的宽度)就行了,高度减125px左右(IE HeightBAR)
background-attachment: fixed;
background-color: #FFF; /* 这里设置背景颜色 */
background-repeat: repeat-x; /* 控制背景图片重复方向*/
background-position: center bottom;
background-image: url(../images/bg.gif); /* 在这里添加背景图片,可以自动扩展 */ }上面是所有页面的背景设置。你可以修改为指定的层的样式,让图片自动覆盖指定层区域,应用可以达到你的目的。
另外,添加背景,不用楼主这样的麻烦。body 对象,或指定的层(div)都有 background 这个样式属性,照我上面的例子,全部可以控制。
如果使用body的background-color或background-image就只能实现一种背景颜色,或图片了。