#javascript #html #css #sass #css-transitions
Вопрос:
Я хочу выровнять текст справа от страницы в строке, также текст должен начинаться с одной и той же позиции на основе самого длинного текста на той же странице.
текущий код
HTML:
<div class="row">
<div>Titile</div>
<span class="comment">
long textelement
</span>
</div>
<div class="row">
<div> Titile2</div>
<span class="comment">
small text
</span>
</div>
CSS:
.row{
width: 67%;
display:flex;
}
.comment{
margin-left: auto;
}
демонстрация: демонстрация
Ожидание
Комментарии:
1. Вам все еще нужна помощь в этом?
2. @AlfredoLipari я нашел один альтернативный способ решить проблему, я скоро опубликую решение
Ответ №1:
Простой обходной путь-добавить контейнер div в качестве родителя, чтобы дочерний элемент был правильно выровнен
.container {
display: flex;
justify-content: space-between;
}
.row {
width: 67%;
display: flex;
flex-direction: column;
}
<div class="container">
<div class="row">
<div>Titile</div>
<span class="comment">
long textelement
</span>
</div>
<div class="row">
<div> Titile2</div>
<span class="comment">
small text
</span>
</div>
</div>
Комментарии:
1. Спасибо за ответ, но содержимое должно быть в правом углу строки
2. пожалуйста, проверьте изображение i.stack.imgur.com/Lanhl.png
Ответ №2:
Вы можете добавить новый div вокруг содержимого в строке, для которой требуется его содержимое справа. Если у этого div есть width: fit-content
, он будет иметь ширину самого большого дочернего элемента(самый длинный текст) и будет выглядеть так, как вы хотели.
.row{
width: 67%;
display:flex;
flex-direction: column;
}
.move-right{
align-items: flex-end;
}
.row-items{
width: fit-content;
}
<div class="row">
<div>
Title
</div>
<span class="comment">
long text element
</span>
</div>
<div class="row move-right">
<div class="row-items">
<div>
Titile2
</div>
<span class="comment">
small text
</span>
</div>
</div>
Комментарии:
1. Спасибо Рамону де Фрису, но ожидания другие, i.stack.imgur.com/Lanhl.png