Вертикальное выравнивание CSS: text-top; не работает для элементов span в моем теге <p>?

Я хочу, чтобы верхняя часть любого нижнего тега span была прикреплена к основанию (нижней части) верхнего тега span, как на изображении.

Я хотел выровнять элементы span, чтобы верх каждого тега span находился в основании верхнего тега span. Я пробовал использовать vertical-align: text-top;, но не увидел никаких изменений.

p#highlighter {
  border: 5px solid black;
  color: black;
  font-family: tusker-grotesk;
  text-align: left;
  vertical-align: text-top;
  width: 50%;
  position: absolute;
  top: 6%;
  left: 2%;
}

p#highlighter span#pos {
  color: #DE000D;
  font-size: 50px;
}
<p id = "highlighter">
  <span id = "pos">POS</span> <br />
  <span id = "smaller">IS     AVAILABLE</span> <br />
  <span id = "here">HERE</span>
</p>

Я тоже пробовал vertical-align: top; но так и не увидел изменений.
Моя цель состоит в том, чтобы теги span были вертикально сгруппированы (прикреплены) друг к другу в контейнере p.

Не могли бы вы уточнить, что вы подразумеваете под «верхним тегом», в основе которого вы хотите, чтобы каждый тег span был? Не могли бы вы также уточнить, что вы имеете в виду, когда говорите, что хотите, чтобы «теги span были вертикально сгруппированы друг с другом»?

Wongjn 01.05.2023 23:22

Я имел в виду верхний тег <span>. Для кластеризации я имею в виду прикрепленные друг к другу по вертикали.

Coding Nerd 01.05.2023 23:24

Можете нарисовать и выложить то, что хотите нарисовать в пейнте, ничего не понятно из того, что вы говорите

kralyolda 01.05.2023 23:38

Они уже как бы прикреплены друг к другу вертикально, нет?

Wongjn 01.05.2023 23:39

Хорошо. Добавлю рисунок.

Coding Nerd 01.05.2023 23:45

Я отредактировал вопрос, а также добавил изображение. Пожалуйста, проверьте, поняли ли вы вопрос.

Coding Nerd 01.05.2023 23:53

ваш вариант использования требует, чтобы элементы были встроенными, а не блочными? потому что такого рода точное выравнивание текста затруднено со встроенными элементами — весь их смысл в том, что они должны плавно перемещаться и подстраиваться под доступное пространство. Для чего-то вроде вашей картинки текст SVG, вероятно, будет лучшим вариантом.

diopside 02.05.2023 00:50

Да, они должны быть встроенными. И я ничего не знаю о текстах SVG.

Coding Nerd 02.05.2023 01:36
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
8
75
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я не уверен, что правильно вас понял, но если вам просто нужно что-то, как на картинке, мой фрагмент может помочь. Это в основном основано на вашем.

#highlighter {
    position: absolute;
    padding: 10px;
    border: 5px solid black;
    line-height: 1;
    text-align: left;
    font-family: sans-serif;
    font-weight: 900;
    color: black;
}

#highlighter span {
    font-size: 4em;
    line-height: 0.7;
}

#highlighter #pos {
    color: red;
}

#highlighter #smaller {
    font-size: 1.5em;
    padding-left: 0.15em;
    letter-spacing: 0.015em;
}
<p id = "highlighter">
  <span id = "pos">POS</span> <br />
  <span id = "smaller">IS AVAILABLE</span><br />
  <span id = "here">HERE</span>
</p>

Ага! Они привязаны к тому, как я этого хотел. Но так как я не получил быстрого ответа, я использовал позиционирование CSS, чтобы выровнять их таким образом.

Coding Nerd 02.05.2023 15:48

Другие вопросы по теме