【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

相关推荐
报错小能手2 小时前
Swift EventBus讲解
开发语言·ios·swift
HiDev_6 小时前
iOS 蓝牙开发进阶:彻底理解 CBManager(状态、权限与正确使用方式)
ios·objective-c·蓝牙·ble
文件夹__iOS20 小时前
SwiftUI 核心选型:class + ObservableObject VS struct + @State
ios·swiftui·swift
SameX1 天前
独立开发了一款健康记录 App,聊聊几个让我纠结很久的设计决策
ios
报错小能手1 天前
Swift UI 框架 实战 简易计数器、待办清单 、随机壁纸图库、个人笔记
ui·ios
游戏开发爱好者81 天前
深入理解iOSTime Profiler:提升iOS应用性能的关键工具
android·ios·小程序·https·uni-app·iphone·webview
for_ever_love__2 天前
UI学习:多界面传值的正向传值(属性传值)和反向传值(代理传值)
学习·ui·ios·objective-c
开心就好20252 天前
全面介绍iOS开发工具:Xcode、AppCode、CocoaPods、Fastlane和Git
后端·ios
懋学的前端攻城狮2 天前
数据持久化与缓存策略:在离线与在线间架起桥梁
ios·swift
~央千澈~2 天前
以cocos3.8.8开发的游戏为例商业实战项目举例cocos打包ios苹果安装包ipa完整详细教程-优雅草卓伊凡
ios