将页面内容推送到左浮动div下方

时间:2013-10-12 19:17:10

标签: jquery css html

我正在处理的网站的某些页面使用脚本根据网页标题自动创建目录。但是,我有一个问题是让“toc”div将页面内容的其余部分推到它下面。

TOC div位于我页面的最里面的div中,即“content”。出于这个原因,我无法像往常那样强制我的内容div低于TOC clear: both;。我不想把它移到“内容”之外,因为我希望TOC低于页面的H1标题,我希望尽可能避免<div></div>垃圾邮件。

下面是一个简单的布局显示我的意思。请注意,TOC具有背景颜色。如果我将它的宽度设为100%,它就会起作用,但颜色会拉伸,这不是我想要的。

http://jsfiddle.net/n3yKf/2/

我可能会更改生成TOC的脚本,因为我并不过分喜欢使用<a>标题的脚本。但是,我的问题是CSS,所以我认为我现在不会对此过分了。

欢迎使用有关创建更好脚本的好方法的建议(希望使用源代码;我讨厌黑盒解决方案)。

2 个答案:

答案 0 :(得分:0)

那么为什么不摆脱float: left呢?如果您想要在下面显示所有其他内容,为什么还要浮动它?只需摆脱浮动并在其上抛出宽度。

#toc {
    background: #999;
    border: 1px solid black;
    padding: 0 1em 1em;
    width: 45%;
}

答案 1 :(得分:0)

你可以做几件事

您可以为每个h2标签添加相同的类,然后将明确的两个应用到css中的该类;

h2 {
    clear:both;
}

你也可以将你的内容包装在一个单独的div中,然后将clear清除到该div

我也修改了你的jsfiddle以使用变量迭代jQuery,所以你只需要通过连接所有的锚标签来追加()一次。

http://jsfiddle.net/n3yKf/5/