回答
这工作出色。它可以使用一些改进,但这个想法是相当稳固的。
CSS:
html, body {
margin: 0;
padding: 0;
border: 0;
overflow-x: hidden
}
body {
background: #eee
}
#container {
width: 80%;
margin: 0 auto;
background: #bbb;
}
#menu {
overflow: auto
}
#menu li {
float: left;
width: 40px;
margin: 5px;
height: 24px;
background: #fff
}
h1, h1 span, h2, h2 span {
padding: 3px 0;
height: 25px;
}
h1, h2 {
position: relative;
margin: 9px 0
}
h1 span, h2.left span {
display: block;
position: absolute;
width: 100%;
left: -100%;
top: 0
}
h2.right span {
display: block;
position: absolute;
width: 102%;
left: 100%;
top: 0
}
h1 {
background: red;
width: 80%
}
h1 span {
background: blue /* blue for demonstration purposes */
}
h2.left {
background: red;
width: 30%;
float: left
}
h2.left span {
background: blue /* blue for demonstration purposes */
}
h2.right {
background: red;
width: 30%;
float: right
}
h2.right span {
background: blue /* blue for demonstration purposes */
}
#content {
clear: both
}
HTML:
<div id="container">
<h1><span></span>Heading</h1>
<h2 class="left"><span></span>Sub-heading</h2>
<h2 class="right">Sub-heading<span></span></h2>
<div id="content">
Hi!
</div>
</div>
也许你可以使用幻觉来实现这一目标?您可以尝试让宽度为100%的蓝条位于所有页面内容的后面,使其仅显示在蓝色“副标题”部分的右侧,但始终位于右侧边缘。你只需要确保你消除剩下的部分(蓝色“子标题”元素左侧的任何东西)。
如果你想在窗口中修复,你可以使用position:fixed
,否则position:absolute
。然后用left:0
和right:0
将它们放在左侧或右侧。使用top
您可以设置从顶部的偏移量。
这对于定位div非常好,但我仍然需要定位文本,以便它在固定宽度区域内开始。 由于浏览器将扩展和缩小,填充左侧将不起作用。 – Accelebrate 2011-02-25 16:58:07
另一个问题是,虽然主标题和绿色子标题将与顶部相距固定距离,但第二个蓝色标题的位置将取决于其上方的内容。 – Accelebrate 2011-02-25 17:03:18
也许这会工作?
<h1 id="mainHeader">Heading</h1>
#mainHeader {
float:left;
clear:both;
width:800px;
background-color:#ff0000;
color:#fff;
}
排序,但标题需要用浏览器扩展而不是固定宽度,文本需要位于固定宽度的内容区域内。 – Accelebrate 2011-02-25 17:10:43
这里在使用我尝试的JavaScript,保持固定宽度的中心:Demo
否则,我不认为你想要什么是可能的使用纯CSS,但我可能会误会。
- 1. 将一个div拉伸到浏览器的边缘
- 2. 将div伸展到屏幕的边缘
- 3. 在窗口浏览器中有一个div伸展
- 4. 边缘浏览器支持
- 5. 拉伸div来浏览器
- 6. 将图像拉伸到浏览器边缘并自动调整浏览器大小
- 7. 将浏览器从边缘切换到使用Javascript的IE浏览器
- 8. 菜单按钮边缘的浏览器
- 9. 呈现浏览器的文字边缘
- 10. 把旁边的对方,但左边和右边的div 3个格必须重复到浏览器的边缘
- 11. div应该触摸浏览器的左边缘
- 12. 如何在浏览器窗口的边缘保留一个框?
- 13. Selenium - 边缘浏览器实例关闭
- 14. object.onload失败,IE浏览器和边缘
- 15. jqgrid边缘浏览器中没有行
- 16. FontAwesome`fa-spin`边缘浏览器故障
- 17. 页眉扩展到浏览器的边缘,但主体有一个间隙,导致不一致的外观
- 18. 两个不同的颜色在容器内分开,伸展到屏幕边缘?
- 19. 将对象传递给带有window.open的边缘的浏览器
- 20. 让一个div伸展到无穷远
- 21. 居中的内容,背景仅延伸到左边浏览器边缘例如:http://kibart.com/
- 22. 粘贴到浏览器边缘的按钮
- 23. 将边框的背景延伸到边缘
- 24. 边缘浏览器中出现意外的1像素边距
- 25. 加载一个div到另一个DIV(IE8,Chrome浏览器)
- 26. 颜色只有div的一个边缘?
- 27. 边缘浏览器中默认进度条有边框
- 28. 图像不会垂直伸展到浏览器大小
- 29. css max-height似乎不适用于IE浏览器边缘浏览器
- 30. UINavBar拉伸图像边缘
如果您想从左到右进行元素拉伸,可以使用'margin:0; width:100%',将元素放在右边'float:right'可以完成这项工作。 – pimvdb 2011-02-25 16:42:53