[英]CSS based on element height?
我有一个按钮,由于文本换行,它会根据屏幕尺寸更改其高度。
屏幕尺寸足够大时,该按钮将非常适合:
但是,当它变小时,按钮将不再居中:
我尝试应用@media
设置:
@media (max-width: 767px) {
#footer-content input[type="button"],
#footer-content button {
margin-top: -22px;
}
}
@media (min-width: 768px) {
#footer-content input[type="button"],
#footer-content button {
margin-top: -10px;
}
}
并且当发生换行符时,它可以完美运行:
但是,如果没有,并且屏幕小于767px,它将再次偏心:
所以我希望仍然可以根据按钮的高度而不是屏幕的宽度来进行CSS编写,但是我一直在进行的研究并没有多大帮助,所以无论如何还是可以通过CSS进行这项工作,或者我会被迫使用JavaScript?
尝试使用flexbox。 如果这实际上是输入类型范围,则您甚至无需指定align-items: center;
使它工作。 https://jsfiddle.net/vo4xcrm5/
的CSS
.wrapper {
display: flex;
margin-top: 100px;
}
.range {
width: 100%;
}
.button {
max-width: 15%;
}
的HTML
<div class="wrapper">
<input class="range" type="range" />
<span class="button">
Some type of button-like thing
</span>
</div>
您可以使用display table和vertical align middle属性,以便按钮和范围滑块始终位于容器的中心,类似于下面的代码
<div>
<div style="display:table">
<div style="display:table-cell;vertical-align:middle"><input type='range'></div>
<div style="display:table-cell;vertical-align:middle"><input type="submit" value = 'something'/></div>
</div>
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.