div 中的文本居中,边框半径为

Center text in div with border-radius

我只想在一个 div 中将文本垂直和水平居中,该文本周围有一个用 border-radius 制作的圆圈。目前文字显示在右下角...

在此处查找 fiddle:http://jsfiddle.net/gvoyu830/

我的css:

DIV {
  display: inline-block;
  width: 10%;
  border: 1.2em solid #dddddd;
  border-radius: 50%;
  max-width: 1.2em;
  max-height: 1.2em;
  box-sizing: border-box;    
  margin: 0 auto;
}

有什么想法吗?

可以通过设置div的height/width和一个line-height等于height来实现垂直对齐。

text-align: center 将进行水平对齐。

div {
    display: inline-block;
    text-align: center;
    /* width: 10%; */
    /* border: 1.2em solid #dddddd; */
    background-color: #ddd;
    width: 2.4em;
    height: 2.4em;
    line-height: 2.4em;
    border-radius: 50%;
    /* max-width: 1.2em; */
    /* max-height: 1.2em; */
    /* box-sizing: border-box; */    
    /* margin: 0 auto; */
}
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>

http://jsfiddle.net/gvoyu830/1/ Center in a circle

我帮你做了,只是相对位置。 (否则,文本 align: center; 不完全有效,因为字符串的开头是数字的左边)

JSFiddle

添加

text-align:center;
display: table-cell;
vertical-align: middle;

示例:

DIV {
    display: inline-block;
    width: 10%;
    border: 1.2em solid #dddddd;
    border-radius: 50%;
    max-width: 1.2em;
    max-height: 1.2em;
    box-sizing: border-box;    
    margin: 0 auto;
   text-align:center;
    display: table-cell;
    vertical-align: middle;

}

真的很想贡献。这就是我得到的:

DIV {
    display:inline-block;
    width: 10%;
    border: 1.5em solid #dddddd;
    border-radius: 50%;
    max-width: 1.15em;
    max-height: 1.15em;
    margin: 0 auto;
    text-align:center;
}

Fiddle Here

已更新:(背景与边框颜色相同) JsFiddle