フォントで2つ以上のアイコンを積み重ね/オーバーラップするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/20353907

  •  25-08-2022
  •  | 
  •  

質問

フォントで2つ以上のアイコンを積み重ね/オーバーラップするにはどうすればよいですか?

私はこのような2つのアイコンを積み重ね/オーバーラップすることができました。

<span class="fa-stack fa-lg">
  <i class="fa fa-square-o fa-stack-2x"></i>
  <i class="fa fa-twitter fa-stack-1x"></i>
</span>

http://jsfiddle.net/nplwz/参照: http://fontawesome.io/examples/#stacked

しかし、私がこのような3つ以上のアイコンを積み重ね/重複しようとするとき。

<span class="fa-stack fa-3x">
  <i class="fa fa-square-o fa-stack-3x"></i>
  <i class="fa fa-square-o fa-stack-2x"></i>
  <i class="fa fa-square-o fa-stack-1x"></i>
</span>

http://jsfiddle.net/nplwz/1/

それはめちゃくちゃになります、どんな考えも、どうすればそれを修正できますか? 3つ以上のアイコンを積み重ね/重複させます。

役に立ちましたか?

解決

同様の問題があり、いくつかのカスタムCSSを使用して解決しました。

.icon-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.icon-stack-1x,
.icon-stack-2x,
.icon-stack-3x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.icon-stack-1x {
  line-height: inherit;
}
.icon-stack-2x {
  font-size: 1.5em;
}
.icon-stack-3x {
  font-size: 2em;
}

したがって、マークアップは次のとおりです。

<span class="icon-stack fa-3x">
   <i class="fa fa-{{whatever icon 3}} icon-stack-3x"></i>
   <i class="fa fa-{{whatever icon 2}} icon-stack-2x"></i>
   <i class="fa fa-{{whatever icon 1}} icon-stack-1x"></i>
</span>

必要に応じて元のCSSを使用できるように、私は重複するFAスタックをオーバーライドするのではなく、決めました。

自分の要件に合わせて、フォントサイズ、ラインの高さなどを明らかに遊ぶことができます。

他のヒント

最後に、からの新しい機能 font-awesome リリースされましたが、今では2つ以上のアイコンを積み重ねることができます。

次のリンクを参照してください。 https://fontawesome.com/how-to-use/on-the-web/styling/layering

この機能は現在提供されています フォンテソン.

見る: https://fontawesome.com/how-to-use/on-the-web/styling/stacking-icons

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top