From 0eddcecdc2e03b40abb6883e2fddc84cf287c60f Mon Sep 17 00:00:00 2001 From: DCloud_LXH <283700113@qq.com> Date: Fri, 2 Feb 2024 17:54:34 +0800 Subject: [PATCH] feat: css --- docs/css/README.md | 231 +++++++----------------------------- docs/css/_sidebar.md | 180 ++++++++++++++-------------- docs/css/common/at-rules.md | 13 ++ docs/css/common/color.md | 3 + docs/css/common/length.md | 20 ++++ docs/css/common/selector.md | 45 +++++++ docs/css/common/variable.md | 55 +++++++++ 7 files changed, 275 insertions(+), 272 deletions(-) create mode 100644 docs/css/common/at-rules.md create mode 100644 docs/css/common/color.md create mode 100644 docs/css/common/length.md create mode 100644 docs/css/common/selector.md create mode 100644 docs/css/common/variable.md diff --git a/docs/css/README.md b/docs/css/README.md index 1186f952..c60e649a 100644 --- a/docs/css/README.md +++ b/docs/css/README.md @@ -1,29 +1,29 @@ # uvue css使用 -uni-app x 在 app平台实现了 web css的子集。 +uni-app x 在 app平台实现了 web css 的子集。 -这个子集有时也被称为ucss,但工程文件仍然是css、less、scss等后缀,style节点的lang属性也没有特殊之处。 +这个子集有时也被称为 ucss,但工程文件仍然是 css、less、scss 等后缀,style 节点的 lang 属性也没有特殊之处。 子集并不影响开发者开发出所需的界面,仅是写法上没有那么丰富。 -App端与web常见的区别是: -1. 仅支持flex布局 -2. 选择器只能用class,不能用tag、#id、[attr]等选择器 -3. 样式不继承,即父元素样式不影响子元素 +当 uni-app x 编译到 web、小程序等平台时,可以支持 web 的全部 css。同时,编译器会进行 css 重置,保证 ucss 这个子集在各端效果的一致性。 -但以上仅是常见的区别,并非所有,需开发者继续阅读全文。 +App端与web常见的区别是: +1. 仅支持**flex 布局** +2. 选择器**只能用 class 选择器**,不能用tag、#id、[attr]等选择器 +3. **样式不继承**,即父元素样式不影响子元素 -当uni-app x编译到web、小程序等平台时,可以支持web的全部css。同时,编译器会进行css重置,保证ucss这个子集在各端效果的一致性。 +> 但以上仅是常见的区别,并非所有,需开发者继续阅读全文。 ## 页面布局 -uni-app x 使用flex布局。这是一种清晰易用、全平台支持的布局。不管web、Android、iOS、微信skyline、快应用,均支持flex布局。 - -页面布局有2个注意事项,flex方向和页面级滚动。 +> uni-app x 使用flex布局。\ +> 这是一种清晰易用、全平台支持的布局。不管web、Android、iOS、微信skyline、快应用,均支持flex布局。\ +> 页面布局有2个注意事项,[flex方向](#flex-direction) 和 [页面级滚动](#pagescroll)。 -### flex方向 +### flex方向 @flex-direction -在web中,flex默认是横向的,但app默认是纵向的。为了多端兼容,建议开发者显式声明flex方向,不使用默认值。 +在web中,flex 默认是`横向`的,但app默认是`纵向`的。为了多端兼容,建议开发者**显式声明flex方向**,不使用默认值。 ```html @@ -46,7 +46,7 @@ uni-app x 使用flex布局。这是一种清晰易用、全平台支持的布局 ``` -```html +```vue ``` -其实flex布局概念非常简单清晰。解释下上面的代码。 - -1. 页面根节点是一个竖排的(class="uni-column")、全屏的(style="flex:1")scroll-view,那么它的子view们就是竖排。 -2. 二级view里的第一个view,设为横排,里面又放了2个三级组件text,那么这2个三级组件text是横排,即左右2个字。 +::: info 其实flex布局概念非常简单清晰。解释下上面的代码。 -想清楚页面布局,设好row还是column,界面写起来很快。 +1. 页面根节点是一个纵向的(class="uni-column")、全屏的(style="flex:1")scroll-view,那么它的子view们就是纵向。 +2. 二级view里的第一个view,设为横向,里面又放了2个三级组件text,那么这2个三级组件text是横向,即左右2个字。 +::: ### 页面级滚动@pagescroll -web开发中,页面是必然可以滚动的。当然也可以给某些div设局部滚动。 +`web开发`中,页面是必然可以滚动的。当然也可以给某些div设局部滚动。 -而原生开发中,页面不能滚动。如果你需要某个地方滚动,那么要在相应位置放scroll-view或list-view等可滚动组件,在这些组件内部滚动。 +而`原生开发`中,**页面不能滚动**。如果你需要某个地方滚动,那么要在相应位置放scroll-view或list-view等可滚动组件,在这些组件内部滚动。 如果你想要整页滚动,那么可以在页面最外层套一个scroll-view,看起来就和web开发的页面滚动一样了。 -在老版nvue中,如果开发者顶层不是scroll-view,编译器会自动在外面套一层scroll-view,来变相实现页面滚动。 -但在uvue中,废弃了这个策略。因为开发者的页面情况较复杂,而且vue3支持多个一级组件,之前的策略可能会多给页面套一层不必要的scroll-view。 +在老版nvue中,如果开发者顶层不是scroll-view,编译器会自动在外面套一层scroll-view,来变相实现页面滚动。\ +但在uvue中,废弃了这个策略。因为开发者的页面情况较复杂,而且vue3支持多个一级组件,之前的策略可能会多给页面套一层不必要的scroll-view。\ 在追求高性能时,多一层scroll-view是不能忍受的。 -uvue的策略是:在新建页面时,提供一个选项,让开发者选择是否需要页面级滚动。如需要则自动在页面代码里template的根节点加一个全屏的scroll-view。 -如果开发者不需要,随时可以自己修改代码。 +`uvue的策略`:在新建页面时,提供一个选项,让开发者选择是否需要页面级滚动。如需要则自动在页面代码里template的根节点加一个全屏的scroll-view。 + +> 如果开发者不需要,随时可以自己修改代码。 ```html