自动高度 - 计算的高度不正确,因此背景无法正常工作 - ASP.net 4.0 - 使用母版页
我正在尝试使高度自动。无论我尝试什么,直到现在都不起作用。
我正在使用 masterpage,asp.net 4.0 ,css
这里是配置
这里是 css 类
*
{
margin: 0;
padding: 0;
}
.logo
{
height: 100px;
width: 1000px;
position: absolute;
top: 0px;
}
body, html
{
height: auto;
height: 100%;
}
.footer
{
visibility: hidden;
}
.MenuBarMasterPage
{
position: absolute;
top: 202px;
margin-left: auto;
margin-right: auto;
width: 1000px;
height: 40px;
}
body
{
background: #0C0C0C url(http://static.monstermmorpg.com/images/backgrounds/animus-mix.gif) repeat;
margin-right: auto;
margin-left: auto;
width: 1000px;
background-position: top center;
}
.main
{
position: absolute;
top: 242px;
width: 1000px;
background: #D1D1D1 url(http://static.monstermmorpg.com/images/backgrounds/content.png) repeat;
z-index: 2;
height: auto;
}
根据对于萤火虫来说,计算出来的 main 的样式高度是 0px 这就是问题
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为了避免必须在每个页面上手动设置不同的固定高度(这是一个糟糕的解决方案),您有两个选择:
没有理由在布局中使用绝对定位。您应该从几乎所有内容中删除
position:absolute
,并编写新的 CSS。您将需要大量
float: left
和float: right
。To avoid having to manually set a different fixed height on each page (which is a terrible solution), you have two options:
There is no reason to use absolute positioning for your layout. You should remove
position: absolute
from almost everything, and write new CSS.You're going to need a lot of
float: left
andfloat: right
.如果您使用的是 Bootstrap 4 (Flex)
如果您的
是带有
display:flex
的 div 的直接子级,您可能需要设置display :block
在父 div 上,所以height:auto
可以工作。If you're using Bootstrap 4 (Flex)
If your
<img>
is direct children of a div withdisplay:flex
, you might want to setdisplay:block
on parent div instead, soheight:auto
will work.