У меня есть компонент React, и я хочу создать вертикальный разделитель (высотой 1 см) между текстом и изображением:
<div class = "container">
<span>goodmorning hello user!</span>
<span class = "divider" /> <img src = "./bell.png" />
</div>
Это CSS, который я использую:
.container {
flex: 1 0 0;
}
.divider {
position: absolute;
left: 50%;
top: 10%;
bottom: 40%;
border-left: 1px solid black;
}
Как получить вертикальную черту между искл. марка и изображение? кодовый ключ
Попробуйте этот пост: stackoverflow.com/questions/4675371/vertical-divider-css






Вам нужно удалить position: absolute из CSS и добавить несколько других стилей для точного размера, который вы хотите. Вот простой пример, который я сделал на основе вашего кода:
https://codesandbox.io/s/kj1monoxo
Я хочу, чтобы перегородка была высотой 1-2 см. Как я могу это сделать?
Вы можете использовать height: 1cm;, если хотите
Родительский контейнер должен иметь display: flex и убрать абсолютное позиционирование.
.container {
display: flex;
justify-content: space-around;
}
.divider {
border-left: 1px solid black;
}<div class = "container">
<span>goodmorning hello user!</span>
<span class = "divider"> </span>
<img src = "https://uploads.codesandbox.io/uploads/user/1755a454-9fe4-4200-8cf7-f76e5c1cbdec/hE5V-bell.png" />
</div>Я предлагаю использовать div, которые по умолчанию являются блочными элементами, а затем использовать display: flex в контейнере:
.container {
display: flex;
}
.divider {
width: 1px;
background-color: black;
margin-left: 20px;
margin-right: 20px;
height: 1cm;
}<div class = "container">
<span>goodmorning hello user!</span>
<div class = "divider"></div>
<img src = "https://img.freepik.com/free-vector/golden-bell_1262-6415.jpg?size=338&ext=jpg&ve=1" />
</div>вместо границы с пустым элементом диапазона, почему бы вам не попробовать ширину:
.divider {
position: relative;
min-width:2px;
max-width:2px;
background-color:#000;
display:inline-block;
margin:0 0.25%;
}
enter code here
<meta name = "viewport" content = "width=device-width, initial-scale=1">
<style>
.vl {
border-left: 6px solid green;
height: 500px;
}
</style>
</head>
<body>
<h2>Vertical Line</h2>
<div class = "vl"></div>
html недействителен, нет самозакрывающегося диапазона ... вы должны использовать
<span></span>. Кстати, вы можете просто добавить рамку к тексту