页面切断与中心技术

时间:2011-03-22 22:02:58

标签: css html center

在我的网站上,我有一个中心和一个右栏。中心和右列由<div>元素包围,id = wrap。使用以下CSS技术对周围的div元素进行居中:

#wrap{
  position:absolute;
  left:50%;
  margin-left:-307px; /* 307px = half of 594px(width of #center_column) */
}

除了当浏览器的宽度小于周围<div>元素的宽度,然后页面的左侧部分被切断并且无法通过水平滚动查看时,此工作正常

2 个答案:

答案 0 :(得分:1)

如果您有一个min-width中心列(594px)+ 2 x 右列宽

,您可以尝试提供正文或整体包装 麻烦是一个绝对定位的布局,页面实际上并不知道div存在,它们就像贴在屏幕上的便利贴一样,所以你必须给它一些“真实”来滚动到

[更新]

我不太确定你是如何进行定位的,但你根本不需要[绝对]定位中心柱,那么你可以使用margin: 0 auto;定心方法..然后您将右列放在底部的居中列中,并将右列放在右侧..然后屏幕保持布局居中,如果右侧边栏被覆盖则滚动

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
 "http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<title> Centered with right Sidebar </title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" href="/" type="text/css" media="screen" charset="utf-8">
<style type="text/css" media="screen">
#wrap{
width: 594px; /* width of center column only */
margin: 0 auto;
position: relative;
border: 3px solid #eee;
height: 400px /* demo only add content for real height */
}

#rightcol {
position: absolute;
right: -260px; /* adjust to suit allowing for borders */
bottom: 0;
border: 3px solid #ff0;
width: 250px;
height: 300px /* demo only */
}

</style>
</head>
<body>
<div id="wrap">
 <div id="content">
    <h1>HTML Ipsum Presents</h1>
    <p><strong>Pellentesque habitant morbi tristique</strong> senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. <em>Aenean ultricies mi vitae est.</em> Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, <code>commodo vitae</code>, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. <a href="#">Donec non enim</a> in turpis pulvinar facilisis. Ut felis.</p>

    <div id="rightcol">Right sidebar</div>
 </div>
</div>
</body>
</html>

答案 1 :(得分:0)

另一种中心技术:

#wrap {
  width: 614px ;
  margin-left: auto ;
  margin-right: auto ;
}

并且在调整浏览器大小时,div将始终可见或可滚动。