[TOC]
# `s-for` 與 `s-if` 不能一起用
百度小程序的判斷和循環不能再同一個組件上。
# 不支持 css `>`
百度小程序不支持 css 的 `>` 選擇器, 建議樣式直接使用 `class` 選擇器。
# 長度單位
百度小程序支持的長度單位是 CSS3 的 `vw`,當然也支持微信小程序的 `rpx`。
# `0.5px` 邊框
使用 **偽元素實現的 `0.5px` 邊框** 在百度小程序下會有異常,建議不要使用這種方法。
# PhoneX 等機型樣式適配
目前微信小程序并沒有提供對 iphoneX,iphoneXS 等機型底部 bar 的適配,但是百度小程序提供了這樣一個適配方案。
~~~
.swan-security-padding-bottom {
padding-bottom: 34px;
}
.swan-security-margin-bottom {
margin-bottom: 34px;
}
.swan-security-fixed-bottom {
bottom: 34px;
}
~~~
只要在 `.swan`文件中使用這組類名即可。
# swan.createSelectorQuery() 有時需要延時獲取寬高等信息
`swan.createSelectorQuery()` 這個獲取dom元素的接口,如果獲取的**dom元素是動態添加的**,那么,在調用 `boundingClientRect` 獲取寬高等信息的時候,是需要延時獲取的。這個在組件中更明顯,就算組件加了` s-if`,在數據成功返回之后再渲染組件,但是渲染的過程也需要耗時,所以不能及時地獲取到元素的信息。就算使用`swan.nextTick()` 也沒作用,有時候也會獲取不到。我設置 `setTimeout` 延時一般是150ms -200ms
# 參考
[細數百度小程序踩的坑](https://www.cnblogs.com/zjjDaily/p/10984696.html)