CSS: 是否可以制作轮廓边框半径?方形图像中的圆形
CSS: is it possible to make outline border-radius? circle shape in a square shape image
我正在尝试制作一个方形菜单,我想添加一个圆形框阴影。类似这样:
https://i.stack.imgur.com/D1owT.png
但它是这样的:
https://i.stack.imgur.com/YGUWt.png
如果我添加 border-radius 是这样的,这不是我要找的:
https://i.stack.imgur.com/HdwlW.png.
这是我正在使用的代码:
nav .nav-right-section .menu-icon {
background-image: url('https://www.svgrepo.com/show/41236/dots-menu.svg');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
width: 16px;
height: 16px;
margin-right: 10px;
margin-left: 10px;
cursor: pointer;
}
nav .nav-right-section .menu-icon:hover {
background-color: rgba(196, 196, 196, 0.131);
-webkit-box-shadow: 0px 0px 0px 4px rgba(196, 196, 196, 0.131);
-moz-box-shadow: 0px 0px 0px 20px rgba(196, 196, 196, 0.131);
box-shadow: 0px 0px 0px 12px rgba(196, 196, 196, 0.131);
border-radius: 50%;
}
你可以尝试用另一个div包裹图标。
然后只在这个包装器上做边框半径 div。
nav .menu-icon-container {
width: 16px;
height: 16px;
cursor: pointer;
margin: 16px;
}
nav .menu-icon-container .menu-icon {
background-image: url('https://www.svgrepo.com/show/41236/dots-menu.svg');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
width: 100%;
height: 100%;
}
nav .menu-icon-container:hover {
background-color: rgba(196, 196, 196, 0.131);
-webkit-box-shadow: 0px 0px 0px 4px rgba(196, 196, 196, 0.131);
-moz-box-shadow: 0px 0px 0px 20px rgba(196, 196, 196, 0.131);
box-shadow: 0px 0px 0px 12px rgba(196, 196, 196, 0.131);
border-radius: 50%;
}
<nav>
<div class="nav-right-section">
<div class="menu-icon-container">
<div class="menu-icon">
</div>
</div>
</div>
<nav>
我正在尝试制作一个方形菜单,我想添加一个圆形框阴影。类似这样:
https://i.stack.imgur.com/D1owT.png
但它是这样的:
https://i.stack.imgur.com/YGUWt.png
如果我添加 border-radius 是这样的,这不是我要找的:
https://i.stack.imgur.com/HdwlW.png.
这是我正在使用的代码:
nav .nav-right-section .menu-icon {
background-image: url('https://www.svgrepo.com/show/41236/dots-menu.svg');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
width: 16px;
height: 16px;
margin-right: 10px;
margin-left: 10px;
cursor: pointer;
}
nav .nav-right-section .menu-icon:hover {
background-color: rgba(196, 196, 196, 0.131);
-webkit-box-shadow: 0px 0px 0px 4px rgba(196, 196, 196, 0.131);
-moz-box-shadow: 0px 0px 0px 20px rgba(196, 196, 196, 0.131);
box-shadow: 0px 0px 0px 12px rgba(196, 196, 196, 0.131);
border-radius: 50%;
}
你可以尝试用另一个div包裹图标。
然后只在这个包装器上做边框半径 div。
nav .menu-icon-container {
width: 16px;
height: 16px;
cursor: pointer;
margin: 16px;
}
nav .menu-icon-container .menu-icon {
background-image: url('https://www.svgrepo.com/show/41236/dots-menu.svg');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
width: 100%;
height: 100%;
}
nav .menu-icon-container:hover {
background-color: rgba(196, 196, 196, 0.131);
-webkit-box-shadow: 0px 0px 0px 4px rgba(196, 196, 196, 0.131);
-moz-box-shadow: 0px 0px 0px 20px rgba(196, 196, 196, 0.131);
box-shadow: 0px 0px 0px 12px rgba(196, 196, 196, 0.131);
border-radius: 50%;
}
<nav>
<div class="nav-right-section">
<div class="menu-icon-container">
<div class="menu-icon">
</div>
</div>
</div>
<nav>