1

アコーディオンのスパンを使用してプラスとマイナスのアイコンを作成しようとしています。スパンを円にスタイルアップすることはできましたが、CSS コンテンツ ルールを使用してスパン内に「+」を挿入する<p>+</p>には<span class="accordian-icon"></span>どうすればよいですか?

HTML

<div class="accordian-head">
   <h3><a href="#">Normal text</a></h3><span class="accordian-icon"></span>
</div>

CSS

.accordian-container .accordian-head span.accordian-icon{
  content:  "+";    
  display: block;
  width: 30px;
  height: 30px;
  float: right;
  background: white;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  margin:10px;
 }
4

2 に答える 2

3

このフィドルはどうですか(それがどのように行われるかの例として、いくつかのアプローチがあります)。

重要なことに、プロパティはまたは 疑似要素contentと組み合わせてのみ使用できます。:after:before

CSS

.accordian-icon{
    display:inline-block;
    position:relative;
    border:1px solid blue;
    border-radius:99px;
    background:blue;
    height:20px;
    width:20px;
    position:relative;
}
.accordian-icon:after{
    color:white;
    content:'+';
    position:relative;
    margin-left:5px;
}
于 2013-11-25T12:13:07.943 に答える
2

&:after/&:before を使用し、それらを相対コンテナー (この例ではスパン) に絶対値として配置することで、これを行うことができます。

これは、私が意味することの簡単なプレビューを備えたフィドルです。

HTML <span class="plus"></span>

CSS

.plus {
    width: 200px;
    height: 60px;
    background-color: red;
    display: inline-block;

    position: relative;
}

.plus:after {
    content: '+';
    color: #fff;
    font-family: arial, sans-serif;
    font-size: 16px;
    position: absolute;
    right: 21px;
    top: 50%;
    margin-top: -8px;
}
于 2013-11-25T12:19:32.337 に答える