2017-06-21 5 views
-2

円の真ん中のテキストを下のスクリプトで整列しようとしていますが、水平方向と垂直方向の中間に整列させることはできません。円の真ん中にテキストをCSSで配置します

.circle { 
 
    background: rgba(72, 156, 234, 1); 
 
    background: -moz-linear-gradient(left, rgba(72, 156, 234, 1) 0%, rgba(31, 123, 229, 1) 100%); 
 
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(72, 156, 234, 1)), color-stop(100%, rgba(31, 123, 229, 1))); 
 
    background: -webkit-linear-gradient(left, rgba(72, 156, 234, 1) 0%, rgba(31, 123, 229, 1) 100%); 
 
    background: -o-linear-gradient(left, rgba(72, 156, 234, 1) 0%, rgba(31, 123, 229, 1) 100%); 
 
    background: -ms-linear-gradient(left, rgba(72, 156, 234, 1) 0%, rgba(31, 123, 229, 1) 100%); 
 
    background: linear-gradient(to right, rgba(72, 156, 234, 1) 0%, rgba(31, 123, 229, 1) 100%); 
 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#489cea', endColorstr='#1f7be5', GradientType=1); 
 
    border-radius: 50%; 
 
    height: 80px; 
 
    width: 80px; 
 
    position: relative; 
 
    box-shadow: 0 0 0 5px #F1F1F1; 
 
    margin: 10px; 
 
    color: #6F0; 
 
    vertical-align: middle; 
 
} 
 

 
.text_circle { 
 
    font-size: 36px; 
 
    margin-bottom: 50px; 
 
    vertical-align: middle; 
 
}
<div align="center" class="circle"> 
 
    <span class="text_circle">5</span> 
 
</div>

+5

これは円形か長方形かどうかは関係ありません。これはインターネットの夜明け以来何度も尋ねられてきました。 – vsync

+1

'line-height'を' height'と同じように使用して中間にします – vsync

+0

@Nickコードで回答を提供する場合は、サードパーティのサイトではなく、ここで回答を投稿する必要があります明日は変わるかもしれない。第二に、コードだけの回答は、彼に魚を投げ、魚の釣り方法を教えていない。これはレッドではありません。教える! – Rob

答えて

1

限り、あなたはテキストのみの1行を持っているように、簡単なトリックは、そのline-height円のheightに設定することです:

.circle { 
 
    background: rgba(72, 156, 234, 1); 
 
    border-radius: 50%; 
 
    height: 80px; 
 
    width: 80px; 
 
    position: relative; 
 
    box-shadow: 0 0 0 5px #F1F1F1; 
 
    margin: 10px; 
 
    color: #6F0; 
 
    vertical-align: middle; 
 
} 
 

 
.text_circle { 
 
    font-size: 36px; 
 
    margin-bottom: 50px; 
 
    line-height: 80px; 
 
}
<div align="center" class="circle"><span class="text_circle">5</span></div>

0

あなたの質問には2つの解決策があります。

一つ

.circle

.circle { 
    position:relative; 
} 

position:relativeプロパティを割り当てtext_circle

.text_circle { 
    position: absolute; 
    top: 50%; 
    left: 50%; 
    transform: translate(-50%,-50%); 
} 

に次のプロパティを追加します

同じ高さのcircleline-heightプロパティを割り当てます。

.circle { 
    line-height: 80px; 
} 
関連する問題