#html #css
#HTML #css — файл #css
Вопрос:
Изображение показывает, чего я хочу достичь:
Вот код, который у меня есть:http://jsfiddle.net/ZNtKj/202 /
<div style="width: 200px" >
<div class="niveles-porcentaje">
<div class="alta" style="width: 40%"> <span class="porcentaje">40%</span></div>
</div>
И стиль, который мне трудно исправить:
div.niveles-porcentaje {
width:100%;
height:100%;
align-self:center;
text-align:center;
display:inline-table;
background-color:#D7D7D7;
}
div.alta {
display:inline-table; /*inside a table*/
line-height: 2em;
background-color: #06AC09;
height:100%;
float:left;
}
span.porcentaje{
text-align:center;
vertical-align:middle;
z-index:99;
}
Div будет находиться внутри td.
Комментарии:
1. Вы хотите 4 индикатора выполнения или изменить цвет в соответствии с процентами?
2. @AlexandreVicenzi Он хочет, чтобы текст располагался по центру всей панели; прямо сейчас он центрируется в разделе «Заполненный прогресс».
3. @hugomosh PS Z-index ничего не делает, если вы тоже не подадите заявку
position
.
Ответ №1:
Вам нужно будет сделать родительский текст во всю ширину. Чтобы сделать это, удалите задний цвет и width
определение из .alta
div и создайте внутренний абсолютный div для работы с цветовой заливкой, которая не будет мешать тексту.
Кроме того, не забудьте установить для текста span
значение display: block
во всю ширину. Проверьте здесь:http://jsfiddle.net/ZNtKj/209 /
<div style="width: 200px" >
<div class="niveles-porcentaje">
<div class="alta">
<div class="fill" style="width: 40%"></div>
<span class="porcentaje">40%</span>
</div>
</div>
</div>
CSS — файл:
div.niveles-porcentaje {
width:100%;
height:100%;
align-self:center;
text-align:center;
display:inline-table;
background-color:#D7D7D7;
}
div.alta {
display:inline-table; /*inside a table*/
line-height: 2em;
height:100%;
width: 100%;
position: relative;
}
div.alta .fill {
background-color: #06AC09;
height:100%;
position: absolute;
}
span.porcentaje{
text-align:center;
vertical-align:middle;
z-index:99;
position: relative;
display: block;
}
Ответ №2:
Вот скрипка с примером. Вы можете просто изменить ширину текстового div, чтобы увидеть результат.
div.niveles-porcentaje {
width:100%;
height:20px;
align-self:center;
text-align:center;
background-color:#D7D7D7;
position:relative;
}
div.alta {
line-height: 2em;
background-color: #06AC09;
height:20px;
float:left;
position:relative;
}
span.porcentaje{
position:absolute;
left:46%;
top:0;
}