我试着用css使用填充来构建按钮。
Html:(2个按钮)
<link rel="stylesheet" type="text/css" href="css/style-login.css" />
<link rel="stylesheet" type="text/css" href="css/font-awesome-4.0.3.css" />
<div class="omb_login">
<div class="omb_socialButtons">
<button class="btnfb">
<i class=" fa fa-facebook" data-size="icon" data-scope="public_profile,email" onlogin="checkLoginState();"></i>
Login With Facebook
</button>
<button class="btngoogle">
<i class="fa fa-google" data-size="icon"></i>
<a href="<?php echo $google; ?>">
Login With Google
</a>
</button>
</div>
</div>
//style-login.css
/*Style Facebook Login */
.omb_login {
text-align: center;
line-height: 300%;
color: white;
display: block;
}
.btnfb {
-moz-box-shadow:inset 0px 1px 0px 0px #88accb;
-webkit-box-shadow:inset 0px 1px 0px 0px #88accb;
box-shadow:inset 0px 1px 0px 0px #88accb;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4189c4', endColorstr='#3975a8',GradientType=0);
background-color:#4189c4;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
border:1px solid #2e6697;
display:inline-block;
cursor:pointer;
color:#ffffff;
font-family:Verdana;
font-size:14px;
font-weight:bold;
padding:0px 55px;
text-decoration:none;
text-shadow:0px 0.1px 0px #FFFFFF;
}
.fa-facebook { // Symbol Facebook
margin-right:12px;
}
.btngoogle {
-moz-box-shadow:inset 0px 1px 0px 0px #F8A088;
-webkit-box-shadow:inset 0px 1px 0px 0px #F8A088;
box-shadow:inset 0px 1px 0px 0px #f8a088;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#eb5d37', endColorstr='#dc5835',GradientType=0);
background-color:#eb5d37;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
border:1px solid #bb4a2b;
display:inline-block;
cursor:pointer;
color:#ffffff;
font-family:Verdana;
font-size:14px;
font-weight:bold;
padding:0px 64px;
text-decoration:none;
text-shadow:0px 0.1px 0px #FFFFFF;
margin-top:10px;
}
.fa-google { // Symbol Google
margin-right:12px;
}
结果:
这是不一样的(宽度fb和谷歌),已经改变填充,仍然没有相同的。
是否可以使用填充(不使用宽度/高度)或对齐来构建宽度相同的按钮?
对不起,我不擅长CSS,有什么建议吗?
3条答案
按热度按时间cmssoen21#
因为文本的长度是不同的,如果不给两个按钮设置相同的宽度,两个按钮看起来不会完全一样。这是合乎逻辑的。但是如果你愿意,你可以对齐图标。
要做到这一点,图标必须独立于按钮文本,因此您需要在图标上使用
position:absolute
并定位它们。见下面的片段
第一个
6kkfgxo02#
当然你可以这样做,但首先你应该添加
display: inline-block
和你想要的width
到目标按钮,然后添加你的padding
。tcbh2hod3#
<style> button {display:block; min-width: 300px;} </style>
这就是如何将最小宽度添加到应用程序中的任何按钮组件,正如您所看到的,即使是带有问号的按钮,其宽度也与所有其他按钮的宽度相等。
如果文本超过了最小宽度(所有按钮的最小宽度为300 px),则此选项将发生变化,包含更多文本的按钮将随文本一起扩展。
在您的
.btngoogle
和.btnfb
类上添加min-width并为其指定值