我正在尝试用CSS实现一些设计,但是在对齐<span>
方面遇到了一些困难。
我想要实现<input>
和<button>
元素居中对齐,而<span>
元素则绝对位于<input>
的右侧,如下所示:
重要的是要确保<span>
不会影响其他元素的对齐。 <input>
和<button>
应始终位于父元素的正中间。
如果可以只使用CSS实现这个效果就太好了。 我目前为止做到了这一点:
div {
position: relative;
text-align: center;
background: #B7B7B7;
width: 400px;
}
input {
padding: 5px;
margin: 10px 0;
text-align: center;
font-size: 1.2em;
width: auto;
}
.verify {
display: block;
width: 20px;
height: 20px;
background: red;
position: absolute;
top: 0; /* Not sure how to calculate these? */
right: 0; /* Input.X + Input.Width + 15px ?? */
}
<div>
<input placeholder="Enter code" maxlength="8" size="8"/><br />
<span class="verify"></span>
<button>Register</button>
</div>
额外信息:
- 只需在Chrome中运行
- 如有必要,我可以使所有元素固定宽度
- 如有必要,我可以进行DOM更改
- 我不希望为<span>硬编码X / Y坐标...我可能稍后想要更改输入/按钮尺寸
input
和span
放在一个额外的div
中吗? - Kilian Stinson