2017-12-21 3 views
10

CSS:CSSライン

.banner-bottom h2 { 
 
    font-size: 2em; 
 
    color: #372568; 
 
    position: relative; 
 
    padding-bottom: 1em; 
 
    text-align: center; 
 
} 
 

 
.banner-bottom h2:before { 
 
    content: ''; 
 
    position: absolute; 
 
    top: 25%; 
 
    left: 25%; 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
} 
 

 
.banner-bottom h2:after { 
 
    content: ''; 
 
    position: absolute; 
 
    top: 25%; 
 
    right: 25%; 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
}
<div class="banner-bottom"> 
 
    <div class="container"> 
 
    <h2>Special Promo</h2> 
 
    <h2>Promo</h2> 
 
    <div> 
 
     <div>
を設定

結果:

enter image description here

:以下のような例を書くの長さに応じてそのラインをCSSにどのよう

enter image description here

+0

あなたのスクリーンショットと同じ結果が表示されません。私はhttps://i.stack.imgur.com/2IcrP.pngを得る。 – TRiG

答えて

5

を@Vinothinがあなたのために答えているようにして行ってもいいです。あなたが使うことができる別のトリックがあります。

transformプロパティを使用すると、絶対位置を使用する際に役立ちます。

.banner-bottom h2 { 
 
    font-size: 2em; 
 
    color: #372568; 
 
    position: relative; 
 
    padding-bottom: 1em; 
 
    text-align: center; 
 
} 
 

 
.banner-bottom h2:before { 
 
    content: ''; 
 
    position: absolute; 
 
    top: 25%; 
 
    transform: translateX(-100%); 
 
    /* no left value is required */ 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
} 
 

 
.banner-bottom h2:after { 
 
    content: ''; 
 
    position: absolute; 
 
    top: 25%; 
 
    /* no right value is required */ 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
}
<div class="banner-bottom"> 
 
    <div class="container"> 
 
    <h2>Special Promo</h2> 
 
    <h2>Promo</h2> 
 
    </div> 
 
</div>

あなたは前の間隔と単語がそれを増加または減少させることにより、翻訳した値でプレイ後に必要がある場合。


プロパティを使用すると、将来的にも役立ちます。あなたが中心のリストを持っていて、アイコンをリストの中央の左に置く必要があるとしたら、transformは唯一の方法です。以前も同様の問題に直面していたので、私はこのトリックを知らせました。

希望すると便利です。

+0

私に多くの助けてくれてありがとう:)) – illogic

+0

それは私の喜びです。 –

8

このお試しください:inline-blockdisplayプロパティの値を設定する

.banner-bottom h2 { 
 
    font-size: 2em; 
 
    color: #372568; 
 
    padding-bottom: 1em; 
 
    text-align: center; 
 
} 
 

 
.line:before { 
 
    content: ''; 
 
    display: inline-block; 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
    margin: 10px; 
 
} 
 

 
.line:after { 
 
    content: ''; 
 
    display: inline-block; 
 
    background: #372568; 
 
    height: 2px; 
 
    width: 8%; 
 
    margin: 10px; 
 
} 
 
.promo { 
 
    display: inline-block; 
 
}
<div class="banner-bottom"> 
 
    <div class="container"> 
 
    <h2><span class="line"><span class="promo">Special Promo</span></span></h2> 
 

 
    <h2><span class="line"><span class="promo">Promo</span></span></h2> 
 
    <div> 
 
<div>

+0


」はここでは「」よりも適切でしょうか? – Bergi

+0

@Bergi:いいえ、[見出しには時間を含めることはできません](https://checker.html5.org/?showsource=yes&doc=data%3Atext%2Fhtml%3Bcharset%3Dutf-8%2C%3C%21DOCTYPE+html %3E%3Ctitle%3E%26lt%3Bhr%3E + in見出し%3C%2Ftitle%3E%250A%3Ch2%3E%3Chr%3E%3C%2Fh2%3E)。 hrは、区切り要素と見出しを使用できない場合の区切り区切り記号としてのみ使用されます。明示的な理由から、文字通りの "水平ルール"としての使用は推奨されなくなりました。 – BoltClock

+0

@BoltClockおっと、どうしたら見出しの中に置かれたのか見逃してしまいます。ありがとう! – Bergi