这取决于你想要达到的目标。
如果你只是想把它放在右边,那么我建议不要使用绝对位置,因为它会打开一整罐蠕虫。
HTML 也可以不变:
HTML
<div>
<h1> Ok </h1>
<button type='button'>Button</button>
</div>
CSS 应该是这样的:
CSS
div {
background: purple;
overflow: hidden;
}
div h1 {
text-align: center;
display: inline-block;
width: 100%;
margin-right: -50%;
}
div button {
float: right;
}
你可以在这里看到它的实际效果:http://jsfiddle.net/azhH5/
如果您可以更改 HTML,那么它会变得更简单:
HTML
<div>
<button type='button'>Button</button>
<h1> Ok </h1>
</div>
CSS
div {
background: purple;
overflow: hidden;
}
div h1 {
text-align: center;
}
div button {
float: right;
margin-left: -50%;
}
您可以看到它的实际效果:http://jsfiddle.net/8WA3k/1/
如果你想让按钮和文本在同一行,你可以这样做:
HTML
<div>
<button type='button'>Button</button>
<h1> Ok </h1>
</div>
CSS
div {
background: purple;
overflow: hidden;
}
div h1 {
text-align: center;
}
div button {
float: right;
margin-left: -50%;
margin-top: 2em;
}
您可以在这里看到它的实际效果:http://jsfiddle.net/EtqVh/1/
在最简单的例子中你必须为<h1>的指定字体大小调整margin-top
编辑:
如您所见,它并没有从<div> 中弹出,而是在里面。这是通过两件事实现的:<button> 上的负边距和<div> 上的overflow: hidden;
编辑 2:
我刚刚看到您还希望它远离右侧的边距。使用这种方法很容易实现。只需将margin-right: 1em; 添加到<button>,如下所示:
div {
background: purple;
overflow: hidden;
}
div h1 {
text-align: center;
}
div button {
float: right;
margin-left: -50%;
margin-top: 2em;
margin-right: 1em;
}
你可以在这里看到它的实际效果:http://jsfiddle.net/QkvGb/