Ответ 1
РАБОЧИЙ ДЕМО: до
senario:
Используя только один псевдоэлемент :before
, вам просто нужно установить border-top
и border-right
, затем дать ему абсолютное положение в левом нижнем углу div2
С тем же кодом HTML, что и все, что вам нужно, это Pseudo-element :before
или :after
объединить witn z-index. Чтобы упростить, я помещаю номера в свой HTML.
Примечание: вы можете установить положение относительно элемента с помощью pseudo
, установить верхнюю границу и правая граница вы можете скрыть это, используя box-shadow тоже посмотреть РАБОЧАЯ ДЕМО С КОРОБКОЙ ШАГОМ.
HTML
<div class="box1">1
</div>
<div class="box2">2
</div>
<div class="box3">3
</div>
<div class="box4">4
</div>
CSS
div{
height:100px;
width:100px;
border:solid 1px;
}
.box1{
position:relative;
left:500px;
background-color:#00d8ff;
z-index:3;
}
.box2{
position:relative;
left:570px;
top:-30px;
background-color:#f6ff00;
z-index: 3;
}
.box2:before{
content: '';
position: absolute;
bottom: -2px;
left: -2px;
width: 32px;
height: 30px;
border-top: 1px solid black;
border-right: 1px solid black;
z-index: 14;
background-color: #ff69fa;
}
.box3{
position:relative;
left:500px;
top:-60px;
background-color:#ff69fa;
z-index:1;
}
.box4{
position:relative;
left:430px;
top:-230px;
background-color:#24ff00;
z-index:2;
}
РАБОЧАЯ ДЕМО С КОРОБКОЙ SHOWOW
Здесь вам просто нужно изменить width
и height
на .box2
.
senario:
вы выбираете один div
в моем случае div2
, вы не устанавливаете фоновый цвет, а затем reset границы border:none;
.
Поскольку вы установили div
ширину, высоту и относительную позицию, теперь вы можете установить ширину :before
и 'after' шириной 100% и высотой 50%, одну сверху, а другую внизу, затем для :before
установите border-top
и для :after
установите border-bottom
.
Теперь установите для обоих из них border-left
и border-right
.
div{
height:100px;
width:100px;
border:solid 1px;
position:relative;
}
.box1{
left:500px;
background-color:#00d8ff;
z-index:3;
}
.box2{
left:570px;
top:-30px;
border:none;
}
.box2:before,.box2:after{
content: '';
position: absolute;
background-color:#f6ff00;
width: 100%;
height: 50%;
left: 0;
border-left:1px solid black;
border-right:1px solid black;
}
.box2:before{
top: 0;
z-index: 3;
border-top:1px solid black;
}
.box2:after{
bottom: 0;
z-index: 0;
border-bottom:1px solid black;
}
.box3{
left:500px;
top:-60px;
background-color:#ff69fa;
z-index:1;
}
.box4{
left:430px;
top:-230px;
background-color:#24ff00;
z-index:2;
}
РАБОЧИЙ ДЕМО: ДО: ПОСЛЕ ГИБКИЙ