Каким способом можно достичь расположения, аналогичного первому скриншоту, с двумя строками текста, обёрнутыми в div-контейнер с классом .name, и при этом установить изображение через псевдоэлемент background для этого .name? Я пробовал использовать inline-block для первого .name, чтобы изображение отображалось в правильном месте, но по-прежнему неправильно отображается. Что я делаю не так и почему это происходит?
Скорее всего, проблема заключается в том, что псевдоэлементы, такие как :before, не могут содержать тег img, так как они не являются частью DOM дерева страницы и не поддерживают этот тег. Однако, можно использовать другие способы для достижения желаемого результата. Одним из таких способов является использование псевдоэлемента :after, в котором вы можете установить нужное изображение в качестве фона. Пример CSS кода: .name { position: relative; } .name:after { content: ""; display: block; position: absolute; top: 0; left: 0; width: 100px; /* установите нужную ширину */ height: 100px; /* установите нужную высоту */ background: url(путь_к_изображению); } Настройте ширину и высоту псевдоэлемента :after в соответствии с вашими требованиями, а затем установите путь к нужному изображению с помощью свойства background.
Добавьте свойство position: relative к блоку с классом .name для относительного позиционирования. Создайте отступ от края блока, равный ширине аватарки и расстоянию до имени. К псевдоэлементу ::before примените свойство position: absolute и сместите его влево на значение отступа. Теперь, используя свойства top и left, можете позиционировать псевдоэлемент как вам нужно относительно имени. Пример ниже: .person { display: flex; align-items: center; gap: 1rem; } .person__photo { width: 50px; height: 50px; border-radius: 50%; flex-shrink: 0; } .person__wrapper { display: grid; gap: 0.25rem; } .person__name { position: relative; /* добавьте отступ от края блока, равный ширине аватарки и расстоянию до имени */ } .person__name::before { content: ""; position: absolute; left: -/* значение отступа */; /* используйте свойства top и left для позиционирования псевдоэлемента */ }