这取决于您想要实现的目标。
如果你只是想把它放在右边,那么我建议不要使用绝对位置,因为它会打开一整罐蠕虫。
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>
和overflow: hidden;
<div>
编辑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/