前言¶
Taro 項目切到 Skyline 渲染之後,同一份 WXSS 在 Skyline 下的行爲和 WebView 不完全一樣。常見的情況是:代碼沒報錯,樣式也沒生效——漸變沒渲染、網格錯位、橫向標籤欄回彈到最左邊、scroll-into-view 沒反應。這類問題排查成本高,因爲日誌裏往往沒有明確提示。
下面介紹的這個 Skill,就是把 Skyline 的樣式限制、默認值差異和佈局陷阱整理成一份檢查清單,附帶一個不依賴 devtools 的編譯校驗腳本。
這是什麼¶
微信小程序 Skyline 樣式守衛,座標 @user_4edac78e/taro-skyline-wxss,版本 1.0.1,來源 community,分類 dev-programming,發佈者 user_4edac78e。
定位是:寫/改 Taro + 微信小程序 Skyline 渲染項目的 WXSS 時使用。解決的問題是 Skyline 與 WebView 的樣式能力差異,以及若干佈局、滾動相關的隱性坑。
Skill 不需要 API Key(標籤 requires_api_key=false)。
核心功能¶
資料裏列出的能力分四類。
1、樣式支持黑名單¶
Skyline 不完整支持的 CSS 特性,寫之前需要先判斷:
radial-gradient只支持circle,不支持橢圓- 尺寸只支持
px background-image最多 2 個值box-shadow不支持疊加backdrop-filter/filter只支持單 function- 沒有
inline-block - 沒有屬性選擇器
2、默認值差異¶
同樣的聲明,Skyline 下的初值不一樣:border-width 默認 3、box-sizing 默認 border-box、display 默認 flex。佈局結果和 WebView 不一致時,優先懷疑這三項。
3、佈局與滾動陷阱¶
flex-wrap+gap首行錯位,少放一張scroll-view偏移被setData重置- 橫向滾動時
scroll-into-view不生效,須改用受控scroll-left加交替 1px 偏移 scroll-view裁掉撐滿高度子項的box-shadowscroll-into-view常駐生效
4、編譯校驗腳本¶
附帶不依賴 devtools 的 SCSS 編譯校驗腳本,含漸變違規自動斷言。也就是說,把漸變寫進 WXSS 後,腳本可以在編譯階段直接把不合規的寫法攔下來,不用打開開發者工具看效果。
安裝與啓用¶
安裝命令未能覈實。官方頁面和 API 地址在寫作時均抓取失敗,資料裏也沒有給出安裝命令,因此不在這裏推測,請以官方頁面爲準:
https://www.skillhub.cn/skills/user_4edac78e/taro-skyline-wxss
座標:
@user_4edac78e/taro-skyline-wxss
啓用方式按觸發詞走,命中以下關鍵詞時加載該 Skill:Skyline、小程序樣式不生效、背景沒渲染、漸變不生效、網格錯位、chip 彈回首位、橫向標籤欄回彈/縮回最左邊、scroll-left 不生效、scroll-into-view 沒反應、Taro 樣式、wxss warning、glass-easel。
典型用法¶
按資料給出的可復現場景,最常見的是橫向滾動定位失效:
1、橫滾場景裏,scroll-into-view 不生效。
2、改用受控 scroll-left,配合交替的 1px 偏移來觸發滾動更新。
3、其餘場景按清單逐項比對:漸變先查 radial-gradient 是否寫成橢圓;陰影先查是否疊加;間距錯位先查 flex-wrap + gap 的首行。
改完 WXSS 後跑一遍附帶的 SCSS 編譯校驗腳本,漸變違規會在編譯階段斷言失敗。
適用場景與注意¶
適合兩類人:一是 Taro 項目準備切 Skyline、想提前排掉樣式差異的;二是已經在 Skyline 下遇到「樣式沒生效但沒報錯」這類問題、需要一個排查順序的。
限制方面:能力清單來自 Skill 簡介,覆蓋的是已知差異點,不等於 Skyline 的全部限制。版本 1.0.1,Skyline 自身的樣式能力仍在變化,使用前建議對照官方文檔複覈。
另外,SkillHub 頁面抓取到的評分爲 100000、下載 1045、安裝 0,這些是抓取時點的數據,會隨時間變化。
結尾¶
這個 Skill 的價值在於把零散的 Skyline 樣式差異收斂成一張清單和一個校驗腳本,減少「改了沒反應」式的排查。官方地址:https://api.skillhub.cn/user_4edac78e/taro-skyline-wxss ,頁面地址:https://www.skillhub.cn/skills/user_4edac78e/taro-skyline-wxss