博客
关于我
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/

你可能感兴趣的文章
org.apache.ibatis.exceptions.PersistenceException:
查看>>
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned
查看>>
org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxxx'异常
查看>>
org.apache.poi.hssf.util.Region
查看>>
org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
查看>>
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /
查看>>
org.hibernate.HibernateException: Unable to get the default Bean Validation factory
查看>>
org.hibernate.ObjectNotFoundException: No row with the given identifier exists:
查看>>
SQL-CLR 类型映射 (LINQ to SQL)
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded
查看>>
org.tinygroup.serviceprocessor-服务处理器
查看>>
org/eclipse/jetty/server/Connector : Unsupported major.minor version 52.0
查看>>
org/hibernate/validator/internal/engine
查看>>
Orleans框架------基于Actor模型生成分布式Id
查看>>
SQL-36 创建一个actor_name表,将actor表中的所有first_name以及last_name导入改表。
查看>>
ORM sqlachemy学习
查看>>
Ormlite数据库
查看>>
orm总结
查看>>