我正在尝试将一个旋转的标题放置在一些文本旁边。静态上,绝对定位非常容易(左图)。但是,当页面调整大小和定位失败时,我遇到了困难(右图)。
- 当前CSS(可更改):**
.headline {
white-space: nowrap;
position: absolute;
top: 185px;
left: -20px;
transform: rotate(270deg);
}
- 当前HTML结构(可更改):**
<header>
<h1 class="headline">Über mich</h1>
</header>
<div class="text">
<p class="introduction">....</p>
</div>
我如何定位元素,使我总是停留在20px
旁边的段落?有人能链接我到现有的模式如何解决这个问题?
使用JS(和jQuery)的解决方案将是一个选择,然而,我显然更喜欢CSS。
5条答案
按热度按时间chhkpiq41#
有同样的问题。设法解决它像这样在纯CSS:
ycggw6v22#
解决办法是迭戈的回答和斯马马蒂的评论相结合:
我不得不使用
transform-origin:bottom
和width:0
。这是相当快的工作,我有一个大问题是定位文本独立的文本长度。我只能设法做到这一点,通过使用javascript。Javascript(确保与变量文本长度兼容):
结果:
brvekthn3#
你试过搬家吗
内
并设置了
这样这个位置就相对于to“text”div了。然后你可能想通过减少它的left值来把Über mich文本移到左边。
z2acfund4#
你试过使用
position:relative
和margin
属性吗?,我想应该是这样的:pkbketx95#
我有一个答案,可能晚了,但对我来说非常有效。
通常你的文本会有一个类或id,它会是position:absolute,在它后面是定位值,如下所示:
等等。
但是,旋转时,定位将变为相对定位(如上所述)。
我发现只要将旋转后的文本放在父div中,就可以根据需要定位(未旋转的,绝对位置)父div,然后在父div中旋转文本(位置:相对),如下所示: