我是初学者,非常困惑,作为div标签,当我使用border-radius给出相同的宽度和高度时:50%它总是变成圆形。 但是如果我想制作一个圆形按钮,那么使用标签a,它不会那样工作。这是当我尝试使圆圈边框按钮可点击时。
<a class="btn" href="#"><i class="ion-ios-arrow-down"></i></a>
.btn {
height: 300px;
width: 300px;
border-radius: 50%;
border: 1px solid red;
}
答案 0 :(得分:38)
对于div
标记,浏览器已经提供了默认属性display:block
。对于锚标记,浏览器没有显示属性。您需要向其添加显示属性。这就是使用display:block
或显示:inline - block
的原因。它会起作用。
.btn {
display:block;
height: 300px;
width: 300px;
border-radius: 50%;
border: 1px solid red;
}
<a class="btn" href="#"><i class="ion-ios-arrow-down"></i></a>
答案 1 :(得分:6)
.round-button {
width:25%;
}
.round-button-circle {
width: 100%;
height:0;
padding-bottom: 100%;
border-radius: 50%;
border:10px solid #cfdcec;
overflow:hidden;
background: #4679BD;
box-shadow: 0 0 3px gray;
}
.round-button-circle:hover {
background:#30588e;
}
.round-button a {
display:block;
float:left;
width:100%;
padding-top:50%;
padding-bottom:50%;
line-height:1em;
margin-top:-0.5em;
text-align:center;
color:#e2eaf3;
font-family:Verdana;
font-size:1.2em;
font-weight:bold;
text-decoration:none;
}
&#13;
<div class="round-button"><div class="round-button-circle"><a href="http://example.com" class="round-button">Button!!</a></div></div>
&#13;
或<a/>
.round-button {
display:block;
width:80px;
height:80px;
line-height:80px;
border: 2px solid #f5f5f5;
border-radius: 50%;
color:#f5f5f5;
text-align:center;
text-decoration:none;
background: #555777;
box-shadow: 0 0 3px gray;
font-size:20px;
font-weight:bold;
}
.round-button:hover {
background: #777555;
}
&#13;
<a href="http://example.com" class="round-button">Button</a>
&#13;
表示jsfiddle参考click here
答案 2 :(得分:5)
这是一个平面设计的圆形按钮:
.btn {
height: 80px;
line-height: 80px;
width: 80px;
font-size: 2em;
font-weight: bold;
border-radius: 50%;
background-color: #4CAF50;
color: white;
text-align: center;
cursor: pointer;
}
<div class="btn">+</div>
但是问题是,+
可能由于字体差异而不能在所有浏览器/平台中完美地垂直居中...另请参见以下问题(及其答案):Vertical alignement of span inside a div when the font-size is big >
答案 3 :(得分:3)
使用此css。
.roundbutton{
display:block;
height: 300px;
width: 300px;
border-radius: 50%;
border: 1px solid red;
}
<a class="roundbutton" href="#"><i class="ion-ios-arrow-down"></i></a>
答案 4 :(得分:2)
添加display: block;
。这是<div>
代码与<a>
代码
.btn {
display: block;
height: 300px;
width: 300px;
border-radius: 50%;
border: 1px solid red;
}
答案 5 :(得分:2)
HTML:
<div class="bool-answer">
<div class="answer">Nej</div>
</div>
CSS:
.bool-answer {
border-radius: 50%;
width: 100px;
height: 100px;
display: flex;
justify-content: center;
align-items: center;
}
答案 6 :(得分:1)
虽然我也可以看到一个公认的答案和其他很好的答案,但想到分享我为解决这个问题所做的工作(仅用一行)。
CSS(创建一个类):
.circle {
border-radius: 50%;
}
HTML(将css类添加到我的按钮):
<a class="button circle button-energized ion-paper-airplane"></a>
如此简单吧?
注意:我实际做的是只使用一行css正确使用离子类。
请参阅此JSFiddle上的结果:
答案 7 :(得分:1)
对于创建圆形按钮,您的代码是:
.circle-right-btn {
display: block;
height: 50px;
width: 50px;
border-radius: 50%;
border: 1px solid #fefefe;
margin-top: 24px;
font-size:22px;
}
<input class="circle-right-btn" type="submit" value="<">
答案 8 :(得分:0)
带有阴影框https://v2.vuetifyjs.com/en/components/floating-action-buttons/的圆形按钮
.btn {
height: 50px;
width: 50px;
line-height: 50px;
font-size: 2em;
border-radius: 50%;
background-color: red;
color: white;
text-align: center;
border: none;
cursor: pointer;
position: fixed;
z-index: 1;
bottom: 10%;
right: 4%;
box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);
}
<div class="btn">+</div>
答案 9 :(得分:0)
问题在于 a
标签的实际宽度取决于其内容。您的代码在 a
标签中没有文字,所以它看起来像一个饥饿的圆圈。如果您沿 div
使用 a
标记,则会获得所需的结果。
检查此代码:
.btn {
background-color: green;
border-radius: 50%;
/*this will rounden-up the button*/
width: 80px;
height: 80px;
/*keep the height and width equal*/
}
<a href="#">
<!--use the URL you want to use-->
<button class="btn">press me</button>
</a>
答案 10 :(得分:0)
你总是可以的
html:<div class = "btn"> <a> <button> idk whatever you want to put in the button </button> </a> </div>
然后做
CSS:
.btn a button { border-radius: 50% }
在我看来很完美
答案 11 :(得分:0)
如果您想要一个更通用的解决方案,可以根据屏幕大小调整大小,您可以使用此示例。
.btnCircle {
border-radius: 50% ;
padding: 3vw;
display: flex;
justify-content: center;
align-items: center;
width:3vw;
height:3vw;
font-size: 2vw;
outline:none;
border: none;
}
.btnBackgroundColor{
background: green;
}
.btnColor{
color: white;
}
<button class="btnCircle btnBackgroundColor btnColor">Yes</button>