And*_*ill 2 css safari css3 flexbox
我只是尝试使用flexbox将一些不同大小的div叠加在一起.我真的很好奇为什么它适用于Chrome/Firefox但不适用于Safari:
<div class="container">
<div class="inner-one"></div>
<div class="inner-two"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
.container {
width: 15rem;
height: 15rem;
border-radius: 50%;
background-color: blue;
display: flex;
align-items: center;
justify-content: center;
}
.container div {
position: absolute;
}
.inner-one {
width: 13rem;
height: 13rem;
border-radius: 50%;
background-color: green;
}
.inner-two {
width: 11rem;
height: 11rem;
border-radius: 50%;
background-color: purple;
}
Run Code Online (Sandbox Code Playgroud)
请参阅JSFiddle:https://jsfiddle.net/19n95exf/3/
因为position: absolute;休息display: flex,请transform: translate改用
.container {
position: relative;
width: 15rem;
height: 15rem;
border-radius: 50%;
background-color: blue;
}
.container div {
border-radius: 50%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}
.inner-one {
width: 13rem;
height: 13rem;
background-color: green;
}
.inner-two {
width: 11rem;
height: 11rem;
background-color: purple;
}Run Code Online (Sandbox Code Playgroud)
<div class="container">
<div class="inner-one"></div>
<div class="inner-two"></div>
</div>Run Code Online (Sandbox Code Playgroud)
或者给内部元素一个左/上值
.container {
width: 15rem;
height: 15rem;
border-radius: 50%;
background-color: blue;
display: flex;
align-items: center;
justify-content: center;
}
.container div {
border-radius: 50%;
position: absolute;
}
.inner-one {
left: 1.5rem;
top: 1.5rem;
width: 13rem;
height: 13rem;
background-color: green;
}
.inner-two {
left: 2.5rem;
top: 2.5rem;
width: 11rem;
height: 11rem;
background-color: purple;
}Run Code Online (Sandbox Code Playgroud)
<div class="container">
<div class="inner-one"></div>
<div class="inner-two"></div>
</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3609 次 |
| 最近记录: |