内联块 div 元素的居中内容
Center content of inline-block div elements
我尝试在 CSS/HTML 中做这样的事情:
每个“框”应该是 link 错误的详细信息。
文本和框内的红色 div 应水平居中,如图所示。
这是我的代码:JSFiddle
.outerDiv {
display: inline-block;
border-radius: 10px;
border: 2px solid #c3c3c3;
height: 100px;
width: 100px;
margin: 5px;
}
.innerDiv {
width: 50%;
height: 100%;
margin: 0 auto;
}
.errorLabel {
background-color: #a90329;
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
color: #fff;
border-radius: .25em;
line-height: 1;
vertical-align: baseline;
font-weight: 700;
text-align: center;
white-space: nowrap;
box-sizing: border-box;
}
编辑:
在 Fabrizio Calderan
的回答之后
如果检测到两个小问题。
- 当标签的文本很短时,它会与文本显示在同一行。
- 当标签的文本很长或包含换行符时,标签看起来不太好。
我通过将标签变成块元素解决了第一个问题。
现在我正在寻找一种方法来确保所有标签的底部边框都具有相同的 space。
(它应该看起来像图片,而不是 fiddle)
向内部 div 添加行高,例如line-height: 50px;
和 text-align: center
外div
http://jsfiddle.net/2mxud8uk/3/
.outerDiv {
text-align: center;
...
}
.innerDiv {
line-height: 50px;
width: 50%;
...
}
结果
我找到了解决问题的方法:JsFiddle
.outerDiv {
text-align: center;
float: left;
border-radius: 10px;
border: 2px solid #c3c3c3;
height: 100px;
width: 100px;
margin: 5px;
line-height: 50px;
}
.errorLabel {
display:inline-block;
vertical-align: bottom;
margin-bottom:7px;
width:84%;
background-color: #a90329;
padding: .2em .6em .3em;
color: #fff;
border-radius: .25em;
line-height: 1;
font-weight: 700;
white-space: nowrap;
box-sizing: border-box;
}
我尝试在 CSS/HTML 中做这样的事情:
每个“框”应该是 link 错误的详细信息。 文本和框内的红色 div 应水平居中,如图所示。
这是我的代码:JSFiddle
.outerDiv {
display: inline-block;
border-radius: 10px;
border: 2px solid #c3c3c3;
height: 100px;
width: 100px;
margin: 5px;
}
.innerDiv {
width: 50%;
height: 100%;
margin: 0 auto;
}
.errorLabel {
background-color: #a90329;
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
color: #fff;
border-radius: .25em;
line-height: 1;
vertical-align: baseline;
font-weight: 700;
text-align: center;
white-space: nowrap;
box-sizing: border-box;
}
编辑: 在 Fabrizio Calderan
的回答之后如果检测到两个小问题。
- 当标签的文本很短时,它会与文本显示在同一行。
- 当标签的文本很长或包含换行符时,标签看起来不太好。
我通过将标签变成块元素解决了第一个问题。 现在我正在寻找一种方法来确保所有标签的底部边框都具有相同的 space。 (它应该看起来像图片,而不是 fiddle)
向内部 div 添加行高,例如line-height: 50px;
和 text-align: center
外div
http://jsfiddle.net/2mxud8uk/3/
.outerDiv {
text-align: center;
...
}
.innerDiv {
line-height: 50px;
width: 50%;
...
}
结果
我找到了解决问题的方法:JsFiddle
.outerDiv {
text-align: center;
float: left;
border-radius: 10px;
border: 2px solid #c3c3c3;
height: 100px;
width: 100px;
margin: 5px;
line-height: 50px;
}
.errorLabel {
display:inline-block;
vertical-align: bottom;
margin-bottom:7px;
width:84%;
background-color: #a90329;
padding: .2em .6em .3em;
color: #fff;
border-radius: .25em;
line-height: 1;
font-weight: 700;
white-space: nowrap;
box-sizing: border-box;
}