css - 为什么我的 div 不重叠?

标签 css transform overlap

我试图让这些 div 重叠并让文本位于三 Angular 形内,但文本只能在三 Angular 形外移动。

JSFiddle

这是 HTML+CSS:

<div class="tri">
    <div class="test">
        This is test
    </div>

.tri {
    width: 0;
    height: 0;
    border-top: 100px solid black;
    border-left: 100px solid transparent;
    position:relative;
}

.test {
    display:inline-block;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
    zoom:1;
    margin-top:-80px;
    margin-left:-80px;
    color:red;
}

最佳答案

您可以简单地使用 position: relative; 作为容器元素,而不是使用 position: absolute; 作为子元素,这样,您的绝对定位元素就不会t在野外流出,会相对于父元素,也会这样重叠

Demo


它也是一个带边框的 CSS 三 Angular 形,heightwidth 分别设置为 0,因此您不能期望子元素重叠三 Angular 形

关于css - 为什么我的 div 不重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18487821/

相关文章:

jquery - 如何合并两个div样式?

javascript - 如何使用 Jquery 检测到内部 div 的点击事件

css - Safari 切断虚线边框的第一个和最后一个破折号

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

CSS Transform scale - 图像仍然占用空间

c# - 在 C# 中查找两个列表之间的重叠

html - body 重叠固定,水平导航栏在顶部 - CSS/HTML

html - div 中的 css div 以错误的方式重叠

jquery - 使用 jquery 动态更改 css 类

javascript - 避免使用 svg 图像进行光栅化,以便在 Firefox 中进行转换