【问题标题】:border-radius not working in MacOS/-webkit-边框半径在 MacOS/-webkit- 中不起作用
【发布时间】:2017-07-08 11:17:52
【问题描述】:

我正在对表单输入进行一些圆角处理,发现边框半径不适用于<select>。它适用于所有其他输入字段,但不适用于选择下拉菜单。当我拿起我的 Macbook Pro 时,我才注意到这一点,但我不记得在我的 Windows 机器上看到过这个问题。这是 OSX/浏览器的问题吗?

我制作了一个 codepen 来在我的环境之外对其进行测试,果然如此!那里也不行!

看看codepen

HTML:

<select class="form-control">
    <option value="">Select User</option>
</select>
<input type="text" class="form-control">

CSS:

.form-control{
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    border-radius: 50px;
    border: 2px solid #bbb;
}

如果是 Mac OS/浏览器组合问题,是否有解决方法?

更新:

Safari 可以,但 Chrome 或 Safari 不行

【问题讨论】:

  • 我认为您可能需要包装它。请参阅此帖子:stackoverflow.com/questions/19444347/… 特别是链接到此小提琴的第三个答案:jsfiddle.net/webx/2g5bydyo
  • 选择元素很难设计,特别针对每个平台/浏览器。有些人更喜欢使用其他标记构建下拉列表,并使用 JS 处理它以同步到传统的表单控件。

标签: html css


【解决方案1】:

Here's an example jsfiddle 使用您的代码和来自this post 的第三个答案:

<div class="form-control">
  <div class="form-control rounded">
    <select class="form-select">
        <option value="">Select User</option>
    </select>
  </div>
  <div class="form-control">
    <input type="text" class="rounded">
  </div>
</div>

CSS:

.form-control {
    display:inline;
    overflow:hidden;
}

.form-select {
  border:0px;
  outline:none;
}

.rounded {
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    border-radius: 50px;
    border: 2px solid #bbb;
}

【讨论】:

  • 干得好 j3py!再做一些造型后,效果很好。很好的解决方法。
猜你喜欢
  • 2016-06-01
  • 2012-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多