Мне известно свойство CSS transform: rotate
и методы, используемые для создания наклонного элемента div
, но есть один очень важный элемент дизайна, который я нигде не могу найти:
Как сохранить граничную рамку под углом
Когда я создаю угловые элементы div, я использую элемент-оболочку, который поворачивается на n градусов, а затем дочерний элемент (часто span
) это повернуто на -n градусов. К сожалению, это приводит к тому, что дочерний элемент имеет свою собственную границу прямоугольника angular, независимую от его родительского элемента.
Изображение ниже является очень c примером того, с чем, похоже, все в порядке, где текст дочернего элемента находится внутри прямоугольника без наклона, но это не то, что я хочу:
CSS повернутый текст за пределами родительской границы
.parent {
width: 200px;
height: 200px;
transform: rotate(30deg);
background-color: blue; /* for clarity in img */
}
.child {
display: inline-block;
transform: rotate(-30deg);
background-color: rgba(250, 80, 80, 0.4); /* for clarity in img */
}
Стоит отметить, что дочерний элемент должен иметь display: inline-block
, чтобы его можно было повернуть.
Вот примерно то, что я ищу:
Some
text goes here
and automatically just-
ifies to the shape of the parent
element which in this case hap-
pens to be a rectangle. Here's
more text to show the
full shape..
--
Я пробовал использовать text-orientation
, различные комбинации значений позиции и другие уловки с transform
, но я не могу заставить текст вести себя так, как будто родительский элемент является его границей; вместо этого он просто создает свое собственное!
Я в порядке с решением JavaScript, но чистый CSS, безусловно, был бы хорош. Надеюсь, этой информации достаточно, чтобы квалифицированный специалист мог решить проблему.
Спасибо за ваше время!