Answers:
i.fa {
display: inline-block;
border-radius: 60px;
box-shadow: 0px 0px 2px #888;
padding: 0.5em 0.6em;
}
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<i class="fa fa-wrench"></i>
border-radius
要圆的元素。您使用什么浏览器?将以前缀更新我的答案
i
具有内容时有效。通常,对于FA,您在i-tag中没有内容,但是图标稍后由CSS呈现:<i class="fa fa-lock"></i>
这就是@Schneider实际要求的内容。
有了Font Awesome,您可以轻松地使用堆叠的图标,如下所示:
<span class="fa-stack fa-2x">
<i class="fas fa-circle-thin fa-stack-2x"></i>
<i class="fas fa-lock fa-stack-1x fa-inverse"></i>
</span>
请参阅字体真棒堆叠的图标
更新:-拨弄堆叠的图标
<span class="fa-stack fa-lg"> <i class="fa fa-circle-thin fa-stack-2x"></i> <i class="fa fa-stack-1x">1</i> </span>
您不需要它的CSS或HTML技巧。Font Awesome 为此内置了类 -fa-circle要将多个图标堆叠在一起,可以在父div上使用fa-stack类
<span class="fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x"></i>
<i class="fa fa-flag fa-stack-1x fa-inverse"></i>
</span>
//我们现在在圆圈内有facebook图标:)
em
用作基本度量如果您使用ems进行测量,包括line-height
,font-size
和border-radius
,text-align: center
它会使事情变得很可靠:
#info i {
font-size: 1.6em;
width: 1.6em;
text-align: center;
line-height: 1.6em;
background: #666;
color: #fff;
border-radius: 0.8em; /* or 50% width & line-height */
}
更新:宁可使用flex。
如果您想要精确度,这就是方法。
小提琴。转到播放-> http://jsfiddle.net/atilkan/zxjcrhga/
这是HTML
<div class="sosial-links">
<a href="#"><i class="fa fa-facebook fa-lg"></i></a>
<a href="#"><i class="fa fa-twitter fa-lg"></i></a>
<a href="#"><i class="fa fa-google-plus fa-lg"></i></a>
<a href="#"><i class="fa fa-pinterest fa-lg"></i></a>
</div>
这是CSS
.sosial-links a{
display: block;
float: left;
width: 36px;
height: 36px;
border: 2px solid #909090;
border-radius: 20px;
margin-right: 7px; /*space between*/
}
.sosial-links a i{
padding: 12px 11px;
font-size: 20px;
color: #909090;
}
玩得开心
更新:
在最近学习flex时,有一种更简洁的方法(没有表且CSS更少)。将包装器设置为,display: flex;
然后将其居中设置为子级,为它align-items: center;
提供(垂直)和justify-content: center;
(水平)居中的属性。
看到这个更新的JS小提琴
奇怪的是,以前没有人建议过这个。.我总是使用表来做到这一点。
只需使包装纸display: table
内部具有中心位置即可text-align: center
进行水平和vertical-align: middle
垂直对齐。
<div class='wrapper'>
<i class='icon fa fa-bars'></i>
</div>
还有像这样的无礼
.wrapper{
display: table;
i{
display: table-cell;
vertical-align: middle;
text-align: center;
}
}
或者看这个JS小提琴
这是您不需要使用的方法padding
,只需将height
和设置width
为,a
然后flex
使用即可margin: 0 auto
。
.social-links a{
text-align:center;
float: left;
width: 36px;
height: 36px;
border: 2px solid #909090;
border-radius: 100%;
margin-right: 7px; /*space between*/
display: flex;
align-items: flex-start;
transition: all 0.4s;
-webkit-transition: all 0.4s;
}
.social-links a i{
font-size: 20px;
align-self:center;
color: #909090;
transition: all 0.4s;
-webkit-transition: all 0.4s;
margin: 0 auto;
}
.social-links a i::before{
display:inline-block;
text-decoration:none;
}
.social-links a:hover{
background: rgba(0,0,0,0.2);
}
.social-links a:hover i{
color:#fff;
}
<link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet"/>
<div class="social-links">
<a href="#"><i class="fa fa-facebook fa-lg"></i></a>
<a href="#"><i class="fa fa-twitter fa-lg"></i></a>
<a href="#"><i class="fa fa-google-plus fa-lg"></i></a>
<a href="#"><i class="fa fa-pinterest fa-lg"></i></a>
</div>
下面的例子对我来说不是很有效,这是我工作的版本!
HTML:
<div class="social-links">
<a href="#"><i class="fa fa-facebook fa-lg"></i></a>
<a href="#"><i class="fa fa-twitter fa-lg"></i></a>
<a href="#"><i class="fa fa-google-plus fa-lg"></i></a>
<a href="#"><i class="fa fa-pinterest fa-lg"></i></a>
</div>
CSS:
.social-links {
text-align:center;
}
.social-links a{
display: inline-block;
width:50px;
height: 50px;
border: 2px solid #909090;
border-radius: 50px;
margin-right: 15px;
}
.social-links a i{
padding: 18px 11px;
font-size: 20px;
color: #909090;
}
试试这个
HTML:
<div class="icon-2x-circle"><i class="fa fa-check fa-2x"></i></div>
CSS:
i {
width: 30px;
height: 30px;
}
.icon-2x-circle {
text-align: center;
padding: 3px;
display: inline-block;
-moz-border-radius: 100px;
-webkit-border-radius: 100px;
border-radius: 100px;
-moz-box-shadow: 0px 0px 2px #888;
-webkit-box-shadow: 0px 0px 2px #888;
box-shadow: 0px 0px 2px #888;
}
您可以使用以下代码简单地获取圆形图标:
<a class="facebook-share-button social-icons" href="#" target="_blank">
<i class="fab fa-facebook socialicons"></i>
</a>
现在,您的CSS将是:
.social-icons {
display: inline-block;border-radius: 25px;box-shadow: 0px 0px 2px #888;
padding: 0.5em;
background: #0D47A1;
font-size: 20px;
}
.socialicons{color: white;}
我喜欢戴夫·埃弗里特(Dave Everitt)的“ line-height”答案,但只能通过指定“ height”来起作用,然后我们必须在line-height中添加“!important” ...
.cercle {
font-size: 2em;
width: 2em;
height: 2em;
text-align: center;
line-height: 2em!important;
background: #666;
color: #fff;
border-radius: 2em;
}
!important
只是一个创可贴,而不是解决方案。这意味着您在其他地方有另一个CSS属性会覆盖您的属性。
到目前为止,这是我找到的最好,最精确的解决方案。
CSS:
.social .fa {
margin-right: 1rem;
border: 2px #fff solid;
border-radius: 50%;
height: 20px;
width: 20px;
line-height: 20px;
text-align: center;
padding: 0.5rem;
}