这取决于您想要实现什么。
如果您只是想将其置于右侧,则不建议使用绝对定位,因为它会在后面引起很多问题。
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>
指定字体大小的上边距。
编辑:
正如您所看到的,它没有从<div>
弹出来,而是仍然在内部。这通过两个方法实现:在<button>
上使用负边距以及在<div>
上使用 overflow: hidden;
。
第二次编辑:
我刚看到您还希望它离右侧边缘有一点距离。这个方法很容易实现。只需在<button>
上添加margin-right: 1em;
,就像这样:
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/