注意,本次测试基于uni-app旧的非自定义组件模式,对最新的自定义组件模式没有参考意义。本次测试主要参考文档是w3schoolCSS选择器参考手册(主要是Android/兼容ios/微信小程序的css选择器)在入坑uniapp/mini-programs的过程中,可以看到dcloud/WeChat只有supportedcssselectors的六种描述,分别是.class,#id,element,element,element,:before,:after但是我看到了dcloud为uniapp写的花哨的uniui库,还有各种花哨的小程序,还有uniapp还标明支持以前的各种没有dom的ui库,所以我觉得事情不是这么简单的,趁着元旦放假,我花了一个下午测试了一下w3c提供的selector,应该是一步到位了uni/小程序的坑。具体支持见下表(Y表示支持,N表示不支持)selectorcssversionh5Androidios微信小程序备注。classcss1YYYY-#idcss1YYYY-*css2YNNN-elementcss1YYYY注意和html,body等选择器类似,非h5端会转为pageelement,elementcss1YYYY-element>elementcss2YYYY-element+elementcss2YYYY-[attribute]css2YYYY1.h5时使用uniapptag属性,编译后该属性可能会消失,导致选择器“失效”,比如view2的hover-class属性。微信小程序/app端使用了非标准属性,比如
