css - 带/不带侧边栏的居中布局

标签 css

我遇到了这个问题:我想要一个带有或不带有右侧边栏的居中布局(它应该 float 到内容的右边)。所以我的 css 必须居中内容 + sidebanner 以防万一有一个 sidebanner 标签或只是内容(内容和 sidebanner 有一个固定的宽度)如果没有 sidebanner 标签 - 有些页面应该有 sidebanner 和一些它不是。 css 应该很好地格式化这两种可能性。 所以它应该是这样的:

<div id="wrapper"><div id="content"></div><div id="sidebanner"></div></div>

我用 floats 和 display:inline 尝试了一些东西,但没有真正解决 :(

最佳答案

试试这个...

#wrapper {
    position:relative;
    left:50%;
    margin-left:-500px;
    width:1000px;
}

margin-left 应该是宽度的负一半。

对于边栏,当它存在时,您可以将类 .wsidebanner 添加到内容 block ,如下所示:

<div id="content" class="wsidebanner"></div>

CSS 将是:

#content {
    background-color:#199;
}

.wsidebanner {
    float:left;
    width:800px;
}

#sidebanner {
    background-color:#919;
    float:right;
    width:200px;
}

关于css - 带/不带侧边栏的居中布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5210247/

相关文章:

javascript - css 难以改变 div 的宽度

html - Bootstrap 导航栏没有响应

javascript - 带有文本类型的 html5 输入框中的微调器?

php - 使用 facebook 评论时错误 iframe 不会在 Chrome 中滚动?

javascript - 尝试加载样式表时出现 404 错误

html - wordpress:粘性菜单直到稍后才粘在滚动上

css - 如何仅针对 Mac 的 Safari?

css - img 在选择器之后列出?

html - 我有 n 个 li,如果它的序号(位置,从 1 开始)除以 2 然后使用纯 css/css3 更新 li 文本中的 "two"

html - 对齐 "textarea"中的文本