Как сделать кастомный outline для textarea, если скролл и бордер тоже кастомные?
codepen.io accountnujen/pen/yLjKaPV
body {
font: 20px sans-serif;
display: flex;
flex-wrap: wrap;
height: 100%;
position: absolute;
justify-content: center;
align-items: center;
width: 100%;
}
.text-wrap {
position: relative;
padding: 35px 20px;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #bec4ce;
width: 300px;
height: 300px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.form-text {
width: 100%;
border-radius: 10px;
box-sizing: border-box;
border: none;
resize: none;
height: 100%;
margin-bottom: 40px;
font: 20px sans-serif;
outline: 5px solid #ffffff00;
outline-offset: 21px;
transition:0.25s all;
}
textarea:focus {
outline-color: #0665d9;
}
#message::-webkit-scrollbar {
width: 8px;
background-color: #f5f5f5;
}
#message::-webkit-scrollbar-corner {
background: rgba(0, 0, 0, 0);
}
#message::-webkit-scrollbar-thumb {
background: #e2e5eb;
border-radius: 10px;
cursor: pointer;
}
#message::-webkit-scrollbar-track {
background: #ffffff;
}
#message::-webkit-scrollbar-track-piece {
background: #ffffff;
height: 10px;
border-radius: 20px;
}
<div class="text-wrap right">
<textarea name="message" class="form-text" id="message"></textarea>
</div>
У меня кастомный scroll и border (чтобы сдвинуть скролл и область для печати) + ко всему высота отступов разная. И вот из-за этих отступов у меня не получается сделать нормальный outline при фокусе, потому что outline-offset расширяется во все стороны равномерно. Подскажите, можно ли без js решить эту проблему?
Мне нужно, чтобы синий outline был по периметру border