野生动物园渲染不同的边框宽度错误



好的,所以问题来了:我想创建一个select+button元素,除了一件事之外,一切都很顺利。

出于某种原因,"select"的边框和"a"标签的边框以不同的方式呈现。虽然这是一个很小的细节,如果你不缩放,你可能不会注意到,但它让我很恼火。

Chrome和Firefox没有这样的问题,但在Safari中是可见的。我的猜测是,我可能忘记覆盖 Safari 的一些根"选择"样式,但我的实验没有成功。

很高兴得到您的帮助!

小提琴 示例照片

.HTML:

<li class="category-product-buttons">
<select style="color: rgb(38, 38, 38);">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<a class="button-anim" type="button" href="">Buy</a>
</li>

CSS是小提琴

创建在所有浏览器上看起来都相同的下拉列表的最佳选择实际上是不使用 . 如果您可以更改 HTML 并将 js 添加到您的项目中,则可以使用 ul 或div 来实现

$(document).ready(function(){
$('.custom-select__field').on('click', function(){
$('.custom-select__list').toggle();
});

$('.custom-select__list li').on('click', function(){
$('.select-value').val($(this).data('value'));
$('.custom-select__list').toggle();
});
});
/* reseting ul styles */
ul {
list-style-type: none;
padding: 0;
margin: 0;
}
/* styling dropdown */
.custom-select {
width: 200px;
height: 40px;
line-height: 40px;
border: 2px solid red;
}
.custom-select__field {
padding: 0 10px;
background: rgba(255, 0, 0, .2);
cursor: pointer;
}
.custom-select__list {
display:none;
}
.custom-select__list li {
padding: 0 10px;
background:rgba(125,125,0,.2);
cursor:pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Only showing this field as text for demonstration, you can hide it with type="hidden"<br>
<br>
<input class="select-value" name="select-value" type="text">
<br>
You can change the style and everything as you need it.<br><br>
<div class="custom-select">
<div class="custom-select__field">Select one</div>
<ul class="custom-select__list">
<li data-value="1">1</li>
<li data-value="2">2</li>
<li data-value="3">3</li>
<li data-value="4">4</li>
</ul>
</div>

如果您对这个概念有疑问,请询问

最新更新