>在2014年,Google发表了材料设计规范,旨在汇总固体设计原理,跨不同平台和设备的一致用户体验以及技术和科学创新。
2015年7月,看到Google Release Material Design Lite,这是一个前端图书馆,旨在使材料设计外观和感觉更加容易地添加到网站上。
在本文中,我将重点介绍以下材料设计的基本原理和组成部分,以及如何使用材料设计Lite(MDL)库来实施它们:
在您的项目中包括材料设计精简版
>
在您的项目中包括MDL时,您有以下选项:接下来,就在关闭标签之前,向MDL JavaScript文件添加引用:
材料设计中的版式
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
材料设计的类型用于英语和类似英语的语言(拉丁语,希腊语和西里尔字符)是Roboto和Noto。
noto还支持诸如中文,日语和韩语等密集的脚本,以及东南亚和中东语言等高个子脚本,例如阿拉伯语,印地语等。
> MDL有许多类具有印刷量表,可访问性和可读性原则的类。这使得更容易显示美丽的文本内容,无论使用用于访问它的设备而言,它都可以读取愉快的内容。
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="http://fonts.googleapis.com/css?family=Roboto:400,100,500,300italic,500italic,700italic,900,300"</span>></span></span>>
>有关排版课程的完整列表,请访问GitHub上的MDL版式组件页面。
请注意MDL库样式表文件名:
颜色应该是出乎意料且充满活力的。
Google材料设计规范材料设计提供了各种美丽的调色板,可以和谐地一起使用。为了使选择颜色更容易,调色板中的每种颜色都有一个数字标签以及十六进制的颜色值来识别它。材料设计指南表示500种颜色是原色。其他颜色最好用作强调颜色。
但是,这并不等于在网页上溅起随机颜色。相反。
>
>为网站制定自定义颜色选择时,材料设计建议您从主要调色板中挑选三种色调,并从次要调色板中挑选一种口音颜色。这是一个示例:
>将重点颜色的使用限制为链接,主操作按钮以及某些组件(例如开关和滑块)。避免使用重音颜色进行身体文本:
>此外,材料设计指南会使用页面大面积和应用程序栏中的重音颜色来劝阻。尤其重要的是不要在浮动动作按钮和背景下使用相同的颜色:
>现在您对材料设计颜色指南有了深入的了解,现在该为您的MDL项目做出了很棒的颜色选择了。这是如何。
>自定义材料设计中的默认调色板
>您可以以以下两种方式从默认的indigo-pink调色板切换到自己的自定义调色板。
>>在HTML页面的
indigo
用您选择的原色和<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
你完成了!
>如果您希望在服务器上托管编译和缩小的MDL文件,则MDL网站已涵盖您。在这里,您可以找到自定义和预览工具,该工具使您可以从交互式色轮中选择一个主要的和强调的调色板。然后,您可以为所选主题下载CSS,然后将其直接插入您的项目:
>
> MDL布局组件mdl将整个布局包含在容器元素中,并带有.mdl-layout .mdl-js-layout。
首先在您的HTML文档的开头标签之后添加以下代码片段:MDL使用CSS Flexbox进行布局。 .mdl-layout元素是一个弹性容器,并将flex方向属性设置为列。
布局组件包括以下四个子组件:
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>导航布局
网格
选项卡
固定标头
请注意MDL如何使用名称bem类组织CSS。如果您不熟悉BEM方法论,请大规模与BEM合作 - Patrick Catanzariti的顶级开发人员的建议提供了一项出色的概述。
接下来,代码
最后,您需要添加相应的内容面板:
>
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
带有.is-Active类的面板,默认情况下将显示。
> 在抽屉组件中放置额外内容
>抽屉非常适合添加小部件,共享按钮和额外的导航链接到网页,而无需混乱设计。
使用您之前添加的代码段,就在
在行动中查看这些片段或检查演示项目的源代码以完整实现标签导航和抽屉组件。
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>
材料设计Lite Grid
默认情况下,网格列容器元素跨越屏幕的整个宽度。如果这不是您想要的,那取决于您在样式表中定义其宽度。
例如,本文的演示项目同时实现了全屏和居中的盒子:<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="http://fonts.googleapis.com/css?family=Roboto:400,100,500,300italic,500italic,700italic,900,300"</span>></span></span>
通过将每个部分包装在不同的.mdl-Grid元素中,并为盒装部分提供一个额外的自定义类,以CSS最大宽度为960px。
html:
和CSS:
>另外,如果您想在网格列之间没有边距,则MDL有一个方便的类,您可以将其添加到网格列容器元素 - .mdl-grid-no-spacing:
<span><span><span><h1</span> class<span>="mdl-typography--display-2"</span>></span>Title<span><span></h1</span>></span> </span><span><span><span><p</span> class<span>="mdl-typography--display-1"</span>></span> </span> Sub-title <span><span><span></p</span>></span></span>>
这将为您提供类似的东西:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.teal-amber.min.css"</span>></span></span>
<span><span><span><div</span> class<span>="mdl-layout mdl-js-layout"</span>></span> </span> <span><!-- All your template markup goes here --> </span><span><span><span></div</span>></span></span>
接下来,您通过在.mdl-cell类中添加
如果您想覆盖默认列大小,则需要添加一个.mdl-cell - {number} -col类,数字为1到12。这是2列网格的代码:
>在Codepen上查看实时演示。
<span><span><span><div</span> class<span>="mdl-layout </span></span></span><span><span> mdl-js-layout mdl-layout--fixed-header </span></span><span><span> mdl-layout--fixed-tabs<span>"</span>></span> </span><span><span><span></div</span>></span></span>如果您的设计需要它,则MDL提供方便的实用程序类,以在特定的屏幕尺寸上隐藏列:
要查看此操作,请在不同的屏幕大小上查看演示项目的欢迎部分。您很快会注意到,列表旁边物品旁边的装饰性粉红色圆圈在小屏幕上不可见:
这是材料设计定义卡组件的方式:
卡是一张材料,可作为更详细信息的切入点。一张卡可以包含有关单个主题的照片,文字和链接。>您可以将不同类型的内容添加到一张卡中,但请确保与核心主题有关。另外,避免在卡中放置过多的信息或太多链接和按钮。相反,将用户指向专用页面,在该页面上,您将有关该主题的更多详细信息。材料设计规范
这是您可以使用MDL卡组件将简单卡添加到页面上的方法:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>>您将卡内容包装在容器元素中,其中包括.mdl-card类。 .mdl-shadow- {number} dp类让您可以控制落下阴影的深度:在此类中添加3、4、6、8或16,将导致更深的落下阴影。
接下来,您为以下卡部分添加一个容器:
卡标题,使用.mdl-card__title类
请参阅codepen上的sitepoint(@sitepoint)的笔材料设计Lite卡。
>您还可以通过将适当的.mdl-card类添加到带有.mdl-cell类的元素中,将网格单元格变成卡组件
>您可以在随附的演示项目中找到这种方法。这是实现响应式瓷砖布局的好方法:
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>
本文全部旨在探索Google的材料设计Lite库,并将其付诸实践,以真实的HTML Web模板。 MDL不是一个全面的框架,例如Bootstrap。它没有您的应用程序最可能需要的所有组件和样式。因此,期望自己编写某些功能。
> 但是,图书馆仍在不断发展,这可能会在以后的发行版中给我们一些新的东西感到惊讶。此外,网络为设计师和开发人员提供了丰富的材料设计生态系统,其中大多数是免费的。>您可以将本文的HTML模板与MDL网站上的模板一起使用,作为开始尝试MDL并构建您自己的出色材料设计项目的另一种资源。
>查看我们最好的材料UI主题指南。>
什么是材料设计精简版(MDL),它与材料设计有何不同? 材料设计精简版(MDL)是Google开发的设计理念,旨在为所有设备提供统一的用户体验和平台。它是材料设计的较轻版本,这是一种综合设计系统,结合了制作数字体验的理论,资源和工具。尽管材料设计是一种完整的设计语言,其中包括大量工具,准则和组件,但MDL是该系统的子集,提供了更简单,更轻巧的框架,易于实现。这对于想要创建现代,时尚的用户界面而没有完整材料设计系统的复杂性的开发人员特别有用。材料设计Lite是一个轻巧,易于使用的框架,可提供现代,时尚的外观和感觉。它旨在使用简单,直接的API和全面的文档易于实现。与其他设计框架相比,MDL不那么全面,但也不那么复杂,这对于那些想要一个没有完整框架的开销的开发人员来说,它是一个不错的选择。
是材料设计精简版。与所有浏览器兼容?
我可以自定义材料设计精简版以适合我的品牌吗?高度可定制。您可以更改颜色,字体和其他设计元素,以匹配品牌的视觉标识。 MDL网站提供了有关如何自定义框架以满足您需求的详细指南。
>以上是Google对材料设计精简版的实用介绍的详细内容。更多信息请关注PHP中文网其他相关文章!