博客
关于我
CSS3 appearance大全鉴赏以及是否影响box-sizing
阅读量:388 次
发布时间:2019-03-05

本文共 1220 字,大约阅读时间需要 4 分钟。

CSS3 appearance改变元素外观

在前一篇实用性很强的文章中,我详细探讨了CSS3 appearance属性的应用,重点介绍了如何通过该属性去除浏览器对HTML5表单元素的默认样式。这些操作可以帮助开发者实现更加个性化的设计,提升用户体验。以下是具体操作示例:

去掉date类型input框的叉叉:

::-webkit-clear-button { -webkit-appearance: none; }

去掉number类型input框的上下箭头:

::-webkit-inner-spin-button { -webkit-appearance: none; }

去掉search类型input框的多个特征:

input[type=search] { -webkit-appearance: none; }::-webkit-search-cancel-button { -webkit-appearance: none; }::-webkit-search-results-button { -webkit-appearance: none; }

此外,还可以对其他元素进行样式重置,例如将span标签变成按钮样式:

span { -webkit-appearance: button; -moz-appearance: button; }

这种方法适用于不同类型的浏览器,能够实现跨浏览器的一致性风格设计。

appearance属性的其他用途

CSS3 appearance属性不仅可以用于改变元素的外观,还可以用于功能性增强。例如,可以通过设置appearance属性将普通元素的行为与特殊元素的行为相结合。这种方式在用户体验优化中有着广泛的应用。

兼容性考量

在兼容性方面,appearance属性的支持情况较为复杂。IE13及以上版本虽然支持appearance属性,但主要采用-webkit-前缀,而非传统的-ms-前缀。这一特别的实现方式可能会让开发者感到困惑,但从长远来看,使用-webkit-前缀能够确保更广泛的浏览器兼容性。

appearance属性对box-sizing的影响

关于box-sizing属性,值得注意的是,appearance属性的设置不会影响box-sizing的计算。无论是普通输入框还是search类型输入框,box-sizing的值仍然由input的type属性决定。因此,在进行跨浏览器样式设计时,应同时考虑box-sizing的设置与appearance属性的应用。

总结

CSS3 appearance属性为开发者提供了强大的样式定制能力,使得UI设计更加个性化。通过合理运用appearance属性,可以有效去除浏览器默认样式,为用户创造更优雅的界面体验。同时,兼容性问题和box-sizing的特殊性也是需要重点关注的方面。希望以上内容能为开发者提供有价值的参考和启发!

转载地址:http://hepwz.baihongyu.com/

你可能感兴趣的文章
Objective-C实现字符串替换replace函数功能(附完整源码)
查看>>
Objective-C实现字符串查找子串(附完整源码)
查看>>
Objective-C实现字符串模式匹配算法(附完整源码)
查看>>
Objective-C实现字符串翻转(附完整源码)
查看>>
Objective-C实现守护进程(附完整源码)
查看>>
Objective-C实现完整的ComplexNumber复数类(附完整源码)
查看>>
Objective-C实现完整的matrix矩阵类(附完整源码)
查看>>
Objective-C实现定时器(附完整源码)
查看>>
Objective-C实现实现rabin karp算法(附完整源码)
查看>>
Objective-C实现对图像进行色调处理算法(附完整源码)
查看>>
Objective-C实现对数ln2(附完整源码)
查看>>
Objective-C实现对称矩阵压缩存储(附完整源码)
查看>>
Objective-C实现寻找Find Lcm最小公倍数算法(附完整源码)
查看>>
Objective-C实现寻找HCF算法(附完整源码)
查看>>
Objective-C实现寻找无向图的关节点Articulation Points算法(附完整源码)
查看>>
Objective-C实现寻找欧拉路径/回路(附完整源码)
查看>>
Objective-C实现导弹跟踪算法(附完整源码)
查看>>
Objective-C实现将 b 除以模 n 的有效算法(附完整源码)
查看>>
Objective-C实现将 base64 字符串转换为字节数组算法(附完整源码)
查看>>
Objective-C实现将两个给定的字符串以O(n)的时间复杂度排列在一个字符串中算法(附完整源码)
查看>>