欢迎关注基于 Angular Material 的中后台管理框架 Ng-Matero 每行代码多少字符合适? 关于代码字符数一直是一个争论不休的问题。...目前常用的代码宽度有三种,分别是 80、100、120,很显然,80 太短,120 太长,以中庸之道,取 100 刚好。...模板格式化 代码宽度对模板(html)的影响也很大,下面我们重点聊一下关于模板的格式化问题。以下是使用 Prettier 的默认设置格式化的效果。...在 首选项-设置-扩展-HTML,设置 Wrap Attributes 属性,选择 preserve-aligned(保留属性的包装,但对齐),这个选项允许多个标签单行显示。...五个及五个以下属性尽量不要强制换行 某些属性建议放在一起,比如 ngModel 和 name,label 和 value 元素标签尽量对齐(除单行元素外) 插值表达式尽量换行 和type 有关的属性尽量前置 以下是根据以上规则格式化后的代码
,并且可以选择具有标签。...enforceSpaceConstraints bool 弹出窗口是否应根据相对于视口的可用空间自动重新定位自身。 error String 显示错误。...将此设置为true会更改行为,以便在更改选项或选项时: 1.选择中的第一个选定值在选项中有效 2.如果选择没有选定值,则选项中没有任何活动 inputText String...popupMatchInputWidth bool 建议弹出宽度是否至少与输入宽度一样宽。...默认情况下使用单个选择模型。 shouldClearOnSelection bool 从菜单中选择项目后是否清除文本。
但是 datetimepicker 的时间选择模块并没有完全遵循 Material 规范(缺少时间输入模式),这也影响了很多需求的实现。...具体效果如下图所示: 在线体验地址 焦点管理属于 a11y 的范畴,使用 Angular Material 可以很轻松的完成 a11y 的需求,同时 Angular CDK 中也有 A11yModule...另外,侧边栏菜单按钮使用语义化标签进行了优化,关于按钮的选择可以参考 Angular Material 在 Button 文档中的说明: Angular Material 使用原生的 ...基于 MDC 的 Angular Material 组件 我觉得 v15 最大的变化不是 Angular,而是 Angular Material。...如果项目中有对 Material 样式的魔改,大部分的样式需要将 class 前缀 .mat- 替换成 .mat-mdc-。
material-dropdown-select组件结合了material-select和material-button-down的API。 当与单个选择模型一起使用时,下拉选择时关闭。...可以通过传递material-select-item元素手动声明选择选项。...buttonAriaLabelledBy String 在下拉按钮中描述选择的元素的id。 例如,对于带有数字选项的下拉列表,显示“每页结果”的文本元素。...deselectLabel String 选择项目的文本标签,取消选择当前选择项。 deselectOnActivate bool 是否在单击或enter/space键上取消选择所选选项。...options SelectionOptions 用于此选择模型的选项。 popupMatchInputWidth bool 弹出宽度是否至少与选择宽度一样宽。
MaterialListComponent Selector: 材料列表是用户要与之交互的一组项目的容器组件。 它构成了选择和菜单组件的基础。...每个宽度将基本块宽度(桌面和平板电脑上的64px)分别乘以1.5,3,5,6,7,以获得可预测的宽度。 设置为0可使列表扩展到其父级的全宽。 width dynamic 已禁用!...MaterialListItemComponent Selector: Material List Item是一个用于用户交互的块元素; 它具有:hover样式和当用户点击或按下...Inputs: closeOnActivate bool 是否应该在选择此项目时关闭包含下拉列表。 disabled bool 禁用触发器并为项目提供禁用的样式。...tabindex String 组件的选项卡索引。 如果tabbable为true且disabled为false,则使用该值。
如果你需要易用的实用工具库,那么这应该是一个不错的选择。 官网:https://tachyons.io/ 4. Foundation ?...它具有出色的 CSS 库,并且与大多数流行的 JavaScript 框架(如 jQuery、Angular、React 和。Vue.js)兼容。其核心库是完全免费使用的。...material design light framework Google 的 Material Design Lite 框架是最流行的 CSS 框架之一,可为你的网站添加 Material Design...Skeleton 中的网格是一个 12 列的流体网格,最大宽度为 960px,随着浏览器或设备的缩小而缩小。可以用一行 CSS 更改最大宽度,并且所有列的大小都会相应进行调整。...以在它的基础上根据自己的需要添加样式和响应实用工具。 官网:https://picturepan2.github.io/spectre/ 15. Base CSS Framework ?
MaterialSelectComponent Selector: 材料选择是用于从集合中选择项目的容器,使用复选图标标记所选选项。...可以手动(在模板中)或通过SelectionOptions实例指定选项。 可以通过模板或通过检查选择模型将选项标记为已选择。...material-dropdown-select组件结合了material-select和material-button-down的API。 当与单个选择模型一起使用时,下拉选择时关闭。...可以通过传递material-select-item元素手动声明选择选项。...popupMatchInputWidth bool 弹出宽度是否至少与选择宽度一样宽。
使用了fitXY,将宽度进行了拉伸,占满屏幕宽度 ?...fitCenter 等比例缩放,此类型为ScaleType默认模式(无选择任何类型的时候默认为此类型),图片宽高比和控件宽高比一致,则填满控件显示,居中显示,即缩放后的图片的中点和控件中点重叠,图片宽高比和控件宽高比不一致...,则等比缩放图片最长边,直到和控件宽或高一边重叠,这种情况可会出现左右或者上下空白。 ...fitEnd 等比例缩放,图片宽高比和控件宽高比一致,则填满控件显示,图片宽高比和控件宽高比不一致,则等比缩放图片最长边,直到和控件宽或高任意一边重叠,这种情况会出现左边或者上边空白。 ...,图片宽度大于或等于控件的宽度,如果原图比例小于控件比例,则按照控件宽/图片宽进行等比例缩放,这样就能保证图片高度在进行同等比例缩放的时候,图片高度大于或等于控件的高度。
Angular15新特性 Angular框架(以下简称“Angular”)作为一款由谷歌开发的Web应用程序框架,其强大的依赖注入系统、可重复使用的模块化开发理念和响应式编程模式等特点让Angular一问世便取得了巨大的关注和流量...基于MDC的组件发布到稳定版 Angular15优化了基于Material Design Components for Web(MDC)中Angular material对于组件的重构,这样使得 Angular...更加接近Material Design的规范。...对于大部分组件,Angular更新了样式和DOM结构。对于新组件,Angular保留了一部分TypeScript API和组件/指令选择器。...$event)"\> \ \ (初始化实例表格) 在src/app/app.component.ts中设置表格的大小和内容: //设置内容长度宽度格式
MaterialPopupComponent Selector: 具有材料设计外观的弹出组件。...enforceSpaceConstraints bool 设置弹出窗口是否应根据相对于视口的可用空间自动重新定位自身。...matchMinSourceWidth bool 设置弹出窗口是否应将最小宽度设置为源宽度。 offsetX int 将x偏移设置为弹出窗口最终定位的位置。...与Angular提供程序类似,它支持首选位置的嵌套列表。 弹出窗口将展平位置列表并选择第一个适合屏幕的位置。 slide String 弹出缩放的方向。
背景Jetpack Compose 提供了强大的 Material Design 组件,其中 TabRow 组件可以用于实现 Material Design 规范的选项卡界面。...)在 TabRow 中添加 Tab 项使用 Tab 组件添加选项卡,传入标题、图标等: TabRow { tabItems.forEach { item -> Tab...val lastName = lastNames.random() // 随机选择一个名字 val firstName = firstNames.random() val secondName...,防止过宽 return minOf(width, minWidth)}图片这样就舒服多了自定义的 Indicator主要逻辑是在 Canvas 上绘制指示器indicator 的宽度根据当前 tab...的宽度及百分比计算indicator 的起始 x 轴坐标根据切换进度在当前 tab 和前/后 tab 之间插值indicator 的高度是整个 Canvas 的高度,即占据了 TabRow 的全高fraction
Attributes: 以下属性通常与一起使用: icon:如果存在,则删除按钮的最小宽度样式。...clear-size:如果存在,则从按钮中删除最小宽度和边距。 dense: 如果存在,将字体大小减小到13px,按钮高度减少到32px。...要自定义颜色,请使用material-ripple选择器: /* Make #myButton use a blue ripple instead of foreground color */ #myButton...tabindex String 组件的选项卡索引。如果tabbable为true且disabled为false,则使用该值。...您可以使用此选择器自定义颜色: /* Make #myButton use a blue ripple instead of foreground color */ #myButton material-ripple
切记在新建 angular 项目的时候一定要选择 scss,因为没有做兼容处理,选择其它格式会有点问题,可以在 angular.json 中修改主样式入口。...$ ng new PROJECT_NAME $ cd PROJECT_NAME $ ng add ng-matero 初始化选项 目前初始化选项只有四个,后续还会增加主题色、语言等选项。...页面布局分为侧边栏导航和顶部导航两种,其它细节可以根据自己的需要自由选择配置。 侧边栏导航 ? 顶部导航 ? 其它参数大家可以自己尝试一下,这里借鉴了 material 的参数项。...因为 ng-matero 是基于 material 组件库,所以可以第一时间更新 ng 的最新功能?。...另外主题系统还不够灵活,样式编写需要向 material 学习,增强定制性,优先选择 mixin 编写。我会在之后的文章中介绍 material 的一些设计亮点。
要显示的选项卡的填充是通过TabLayout.Tab实例完成的。可以通过创建标签 newTab()。在此处,您可以分别通过setText(int) 和更改选项卡的标签或图标setIcon(int)。...要显示选项卡,需要通过一种addTab(Tab)方法将其添加到布局中。...setText(“ Tab 3”)); 应该添加一个监听器,addOnTabSelectedListener(OnTabSelectedListener)以在任何选项卡的选择状态更改时得到通知。...layout_gravity =“ top” /> 3.使用详解 这里很多人都使用的都是design 28,主工程的gradle的配置根据不同情况改...设置最大的tab宽度: app:tabMaxWidth="xxdp" 设置最小的tab宽度: app:tabMinWidth="xxdp" (6)Tab
自上次参加完回音分享会后,我下定决心要洗心革面乖乖打基础,于是开启了这个part,争取两个月不间断更新,写完Material Design与iOS中的组件(顺便学学英语),以便今后在使用的时候完全不虚...Picker的宽度取决于设备和环境,可以是屏幕的宽度或 enclosing view。 使用时注意 ·使用可预测的和逻辑上有序的值 当可滚动列表停止滚动时,picker中的许多值会被隐藏。...Date Picker Date Picker 用于选择特定日期,时间或两者均有的高效页面。 它还提供了一个显示倒数计时器的界面。 Date Picker 有四种模式,每种模式都有一组不同的可选值。...显示小时和分钟,最长23小时59分钟; Date Picker 中显示的确切值及其顺序取决于用户的区域设置。 考虑在指定分钟时提供较小的粒度。 默认情况下,分钟列表包含60个值(0到59)。...只要能平均分配到60分钟,可以选择增加分钟的时间间隔。例如,您可能需要每小时四分之一的时间间隔(0,15,30和45)。
(1)谷歌 Material Design 谷歌的 Material Design ,是一套大一统的自适应布局解决方案,将页面宽度划分为13种场景,在达到这13种场景的临界点时,调整自适应布局的三个影响因子...如果你的产品希望以谷歌的设计规范为依托,并且后期不会做个性化调整,谷歌的 Material Design 是很好的选择。 (2)定制栅格的方案 定制栅格方案常用于企业官网或者视频网站。...Material Design 方案适合于团队设计资源投入少,设计风格以谷歌 Material Design UI 为准,且后期不会做个性化调整的团队。...以下整理三种自适应方案的计算方式: 以下整理三种方案的计算公式: 以下根据自适应卡片宽度为例分析具体的流程: calcGridSize 根据当前配置项选择计算方式; getGridNum 计算出一行同时存在的卡片个数...; 根据 limitW 计算是否需要调整卡片个数,计算出最终的卡片宽度。
下面是一段使用 80 字符宽度格式化的 TS 代码: ? 我们再看一下扩大到 100 字符之后的效果: ?...目前常用的代码宽度有三种,分别是 80、100、120,很显然,80 太短,120 太长,以中庸之道,取 100 刚好。...模板格式化 代码宽度对模板(html)的影响也很大,下面我们重点聊一下关于模板的格式化问题。以下是使用 Prettier 的默认设置格式化的效果: ?...在 首选项-设置-扩展-HTML,设置 Wrap Attributes属性,选择 preserve-aligned(保留属性的包装,但对齐),这个选项允许单行显示多个标签。...五个及五个以下属性尽量不要强制换行 某些属性建议放在一起,比如 ngModel和 name,label和 value 元素标签尽量对齐(除单行元素外) 插值表达式尽量换行 和type有关的属性尽量前置 以下是根据以上规则格式化后的代码
自上次参加完回音分享会后,我下定决心要洗心革面乖乖打基础,于是开启了这个part,争取两个月不间断更新,写完Material Design与iOS中的组件(顺便学学英语),以便今后在使用的时候完全不虚...Tabs Material Design链接:Tabs ?...选择文字标签时,请使用简短的标题。 避免对内容进行交叉标签比较的需要。 重要的跨标签比较可能表明内容将从不同的组织方式或展示方式中获益,从而使内容更接近。 ?...标签的展示方式 ---- Tabs类型 根据平台和使用环境,tab的可以分为固定tabs或可滚动tabs。...固定tabs具有相同的宽度,计算方式为视图宽度除以标签数量,或基于最宽的tab标签。 要在固定选项卡之间导航,可点击tab或向左或向右滑动内容区域。 ?
这也是我刚开始不敢选择 Angular Material 的一个原因。...题外话:为什么 ng-matero 会选择 Angular Material 抛开官方提到的几点不谈。首先我是那种比较激进的开发者,对于先进的设计理念,我都有跃跃欲试的执念。...另外,Angular Material 的样式是基于 Sass 编写,而我最喜欢的也是 Sass,所以基于 Angular Material 编写 ng-matero 就是宿命的选择。...ng-matero 在使用 ng add 初始化的时候增加了预构建主题选项,生成的主题只有一份,如果有特殊需求可以自行定制。实现方式就是不同主题传入不同变量,但是这种情况下多主题控制会有问题。... 最后可以根据自己的需求调整一下样式。
支持多种主题风格,比如 laravel, original, material, postmark 等。 支持快速检索,基于强大的 lunr.js 搜索引擎。...安装 compodoc 首先我们以 local 模式进行安装: $ npm install --save-dev @compodoc/compodoc 当然你也可以选择 global 模式进行安装: $.../compodoc -p src/tsconfig.app.json" } 配置完 npm script,我们就可以运行以下命令: $ npm run compodoc compodoc 命令支持很多选项...,这里我们简单介绍几个比较常用的选项: -p, –tsconfig [config] —— 指定 tsconfig.json 文件的路径 -n, –name [name] —— 文档的标题 -s, –serve...: number { let sum = a + b; this.storedValued = sum; return sum; } } 其实 Compodoc 除了能够根据
领取专属 10元无门槛券
手把手带您无忧上云