【IOS webview】IOS13不支持svelte 样式嵌套

文章目录

场景

发现页面在IOS 13 的webview上样式错位了。显然css没有被正确的加载。

技术栈:svelte

样式:scss

排查

发现错位的样式在scss中有嵌套:

css 复制代码
.left-tip {
      display: flex;
      font-size: 16px;
      img {
        width: 20px;
        height: 20px;
        margin-right: 24px;
      }

嵌套部分的样式就是错位的。

调试后发现:
svelte的scss嵌套编译后会出现:where 。 这个代码表示嵌套。

IOS13不支持where。因此样式会错位。

来源:

"where" | Can I use... Support tables for HTML5, CSS3, etc

其实文档中也有提到会加where

作用域样式 • 文档 • Svelte - Svelte 框架

解决方法

为了适配低版本IOS,不要把样式写在svelte中。而是写在scss文件中。------可以理解为,把样式写在全局。(其实这样也不好)

或是,坚持不写嵌套样式,但是这样会让代码更加繁琐。不推荐。

更好的方法

可以写一个插件,移除编译后的所有where

相关推荐
Anhty7 小时前
2026九月最新变声器测评:iOS安卓双端适配,低延迟运行更稳定
android·人工智能·功能测试·ios·智能手机
_瑞16 小时前
APM_OOMDetector
ios
秋雨梧桐叶落莳16 小时前
【iOS】从源码深入理解RunLoop机制
macos·ios·objective-c·cocoa·cocoapods·uikit
烂蜻蜓17 小时前
Flask入门教程(二十七):Session Interface API——自定义Session存储后端
网络·ios·flask
用户380341658829718 小时前
VideoToolbox 硬编解码的十个坑:为什么它几乎从不报错
ios
bcbnb18 小时前
Flutter-Notebook代码混淆:Android与iOS平台安全配置
后端·ios
2501_9151063219 小时前
第一次开发 iPhone App,可能碰到的问题,解决办法
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_9151063220 小时前
iOS数据采集技术详解:从性能监控到崩溃分析的全链路实践
android·ios·小程序·https·uni-app·iphone·webview
末代iOS程序员华仔1 天前
iOS 5.6 条例解决方法
flutter·ios·swift
末代iOS程序员华仔2 天前
Guideline 5.6 - Developer Code of Conduct
flutter·ios·swift