Sha*_*ath 2 html css css-shapes
我有下面的CSS代码,该代码给出+符号,但与设计基本不匹配,因此需要变薄。参见摘要和鳕鱼
.plus {
position:relative;
border: 1px dotted white;
width: 3px;
height: 3px;
background-color: black;
box-sizing: border-box;
transform: scale(11);
}Run Code Online (Sandbox Code Playgroud)
<div class="plus"></div>Run Code Online (Sandbox Code Playgroud)
Any other styling is also fine for me but should look like the snapshot.
使用如下的多色背景:
.plus {
display:inline-block;
width:50px;
height:50px;
background:
linear-gradient(#fff,#fff),
linear-gradient(#fff,#fff),
#000;
background-position:center;
background-size: 50% 2px,2px 50%; /*thickness = 2px, length = 50% (25px)*/
background-repeat:no-repeat;
}
.alt {
background:
linear-gradient(#000,#000),
linear-gradient(#000,#000);
background-position:center;
background-size: 50% 2px,2px 50%; /*thickness = 2px, length = 50% (25px)*/
background-repeat:no-repeat;
}
.radius {
border-radius:50%;
}Run Code Online (Sandbox Code Playgroud)
<div class="plus">
</div>
<div class="plus alt">
</div>
<div class="plus radius">
</div>Run Code Online (Sandbox Code Playgroud)
这是透明的:
.plus {
width:50px;
height:50px;
display:inline-block;
background:
linear-gradient(#000,#000) top left,
linear-gradient(#000,#000) top right,
linear-gradient(#000,#000) bottom left,
linear-gradient(#000,#000) bottom right;
background-size: calc(50% - 1px) calc(50% - 1px); /*thickness = 2px (2*1px) */
background-repeat:no-repeat;
border:10px solid #000; /*length = 30px (50px - 2x10px) */
box-sizing:border-box;
}
.radius {
border-radius:50%;
}
body {
background:pink;
}Run Code Online (Sandbox Code Playgroud)
<div class="plus">
</div>
<div class="plus radius">
</div>Run Code Online (Sandbox Code Playgroud)
我们可以添加CSS变量来轻松控制总体形状:
.plus {
--t:2px; /* Thickness */
--l:40px; /* size of the symbol */
--s:10px; /* space around the symbol */
--c1:#fff; /* Plus color*/
--c2:#000; /* background color*/
display:inline-block;
width:var(--l);
height:var(--l);
padding:var(--s);
box-sizing:border-box; /*Remove this if you don't want space to be included in the size*/
background:
linear-gradient(var(--c1),var(--c1)) content-box,
linear-gradient(var(--c1),var(--c1)) content-box,
var(--c2);
background-position:center;
background-size: 100% var(--t),var(--t) 100%;
background-repeat:no-repeat;
}
.radius {
border-radius:50%;
}Run Code Online (Sandbox Code Playgroud)
<div class="plus"></div>
<div class="plus" style="--l:35px;--t:3px;--c2:green"></div>
<div class="plus" style="--l:50px;--t:1px;--s:5px;--c1:red;"></div>
<div class="plus" style="--l:35px;--t:5px;--s:0px;--c1:blue;--c2:orange;"></div>
<br>
<div class="plus radius"></div>
<div class="plus radius" style="--l:35px;--t:3px;--c2:green"></div>
<div class="plus radius" style="--l:50px;--t:1px;--s:5px;--c1:red;"></div>
<div class="plus radius" style="--l:35px;--t:5px;--s:0px;--c1:blue;--c2:orange;"></div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1758 次 |
| 最近记录: |