#css #alignment
#css #выравнивание
Вопрос:
Я новичок в CSS, и мне не удается делать то, что мне нужно.
Я хочу отобразить некоторый текст слева и справа в одной строке, а затем только справа во второй строке.
Вот JsFiddle :
HTML :
<div class="myDiv">
<p class="alignleft"> Text on the left.</p>
<p class="alignright">Text on the right.</p>
<p class="alignright2">Text on the right 2.</p>
</div>
<div class="myDiv">
<p class="alignleft"> Text on the left.</p>
<p class="alignright">Text on the right.</p>
<p class="alignright2">Text on the right 2.</p>
</div>
CSS :
.myDiv{
margin: 0 25% 10px 25%;
border-style: dashed;
border-width: 1px;
}
.alignleft {
float: left;
}
.alignright {
float: right;
}
«Текст справа 2» должен быть под «Текстом справа».
Это должно быть очень просто, но, как я уже сказал, я новичок…
Ответ №1:
Попробуйте это, если это работает так, как вам нужно.
.alignright2 {
float: right;
clear: right;
}
Комментарии:
1. это решение, похоже, работает для меня .. единственное, чего не хватало, это clear: .myDiv:after { content:»»; дисплей: блок; очистить: оба; видимость: скрытая;}
Ответ №2:
Это работает скрипка
.alignleft {
text-align:left;
}
.alignright {
text-align:right;
}
.alignright2 {
text-align:right;
}
Комментарии:
1. Спасибо. Но первый «Текст справа» должен быть в той же строке.
Ответ №3:
Попробуйте это:
HTML
<div class="myDiv">
<p class="alignleft"> Text on the left.</p>
<p class="alignright">Text on the right.</p>
<div style="clear:left;"></div>
<p class="alignright2">Text on the right 2.</p>
<div style="clear:right;"></div>
</div>
<div class="myDiv">
<p class="alignleft"> Text on the left.</p>
<p class="alignright">Text on the right.</p>
<div style="clear:left;"></div>
<p class="alignright2">Text on the right 2.</p>
<div style="clear:right;"></div>
</div>
css
.myDiv{
margin: 0 25% 10px 25%;
border-style: dashed;
border-width: 1px;"
}
.alignleft {
float: left;
}
.alignright {
float: right;
}
.alignright2 {
float:right;
}
Ответ №4:
Попробуйте добавить
.alignright2 {
display:inline-block;
margin-left:50%;
}
Вы можете изменить поля в соответствии с вашим текстом или вам нужно изменить свой html, заменив абзац right2 на div.
Ответ №5:
Добавьте это в свой css:
.alignright2 {
text-align:right;
clear:right;
}
Ответ №6:
Вместо добавления дополнительных тегов в ваш HMTL, альтернативное решение для вашего кода.
Просто измените свой css:
.myDiv{
margin: 0 25% 10px 25%;
border-style: dashed;
border-width: 1px;
display:inline-block; // Newly added...
}
.alignleft {
float: left;
}
.alignright {
float: right;
}
.alignright2 {
float:right;// Newly added...
}
Комментарии:
1. Спасибо. Но в вашем примере весь текст находится на одной строке, если я не уменьшу ширину области.