css - 伪元素之前的响应式 CSS 转换

标签 css rotation transform pseudo-element

我在这里的效果是在 h1 标题的 before 伪元素中显示单词“Introducing”,它的内容居中。到目前为止,我的努力如下所示

h1::before
{
 font-size:0.7rem;
 content:'Introducing';
 position:absolute;
 left:calc(50% - 6em);
 top:-0.75em;
 transform:rotate(-45deg);   
  
}
h1
{
 text-align:center;
 position:relative;
 margin-top:30px;
}
<h1>
Hello
</h1>

这是有效的,据我所知,它是响应式的 - before 伪保留其相对于其父级的位置。但是,我怀疑这不是正确的解决方案。希望这里有人可以提出更好的方法。

最佳答案

您当前的解决方案可响应不同的屏幕尺寸,但与不同的 h1 长度无关。较长的文本需要不同的位置。

你可以解决它让 h1 的宽度调整到它的内容。现在,只需将伪定位在左上角,通过平移将其居中并旋转。

h1::before {
  font-size: 0.7rem;
  content: 'Introducing';
  position: absolute;
  top: -1em;
  transform: translateX(-50%) rotate(-45deg);
}

h1 {
  text-align: center;
  position: relative;
  margin: 30px auto;
  width: fit-content;
  background-color: cadetblue;
}
<h1>
  Hello
</h1>
<h1>
  Hello World
</h1>

关于css - 伪元素之前的响应式 CSS 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48207671/

相关文章:

css - 如何设置 webkit-transform-origin 在其边缘滚动 3D 立方体?

html - 当鼠标悬停但不移动时,转换后的图像不会保持可见?

css - 使用@import 语法的自定义网络字体

php - CSS 位置 : absolute and Z-index can't get text Div to overlap images echoed from Database?

css - 如何在appcelerator android中自定义选择器的大小?

javascript - 在 Chrome 中取消焦点之前,li 上的类字体颜色不会呈现

javascript - HTML5 Canvas - 添加更多圆圈以圆周运动旋转

css - 如何使用关键帧动画分别为多个 ​​CSS 转换属性设置动画

c# - 你如何在c#中将图像旋转到鼠标的位置?

rotation - Unity 对象不围绕枢轴点旋转