WebAppBuilder自定义主题

by 李远祥

基本步骤:

  1. 创建新主题的文件夹
  2. 注册新的主题到manifest.json 文件
  3. 覆盖HeaderController 部件的颜色、
  4. 覆盖panel的颜色
  5. 覆盖弹出框的颜色
  6. 自定义字体

主题可以自定义的部分包括Brand的颜色、字体和其他的基础UI属性。以下使用珠宝箱主题进行修改,新的主题修改涉及到UI的一些CSS属性

Background color

Text color

Font family

Font size

Padding

这些UI组件在珠宝箱主题的标题控制组件、panel组件和地图弹出框中。

  1. 创建一个新的主题文件夹

    打开webappbuilder的~/client/stemapp/themes/JewelryBoxTheme/styles 文件夹,创建一个新的文件夹为myStyle。在mystyle文件夹下创建名为style.css文件。当然,也可以见将css文件所用到的其他资源如图片等关联到该CSS文件中。

  2. 注册新的主题到manifest.json 文件

    打开~/client/stemapp/themes/JewelryBoxTheme/manifest.json文件

    将以下关于myStyle的属性添加到styles节点中

    A."name"—必须与myStyle的主题匹配

    B. "description"—添加关于主题的描述

    C."styleColor"定义主题在WebAppBuilder的中的显示背景颜色

    D.重新启动webAppbuilder 可以看到宝箱主题里面新的样式,如下图

  3. 重写标题控制部件的颜色

更新标题控制部件的颜色方案,可以添加CSS代码到style.css文件中。

  1. 以下代码使背景变成白色(#fff)

    .jimu-main-background {

    background-color: #fff;

    }

    名为background-color 的类名是.jimu-main-background的属性,这是Jimu CSS框架和    其他UI包元素中的其中一个类型,详细的Jimu CSS类,可以查看 CSS框架 ,https://developers.arcgis.com/web-appbuilder/api-reference/css-framework.htm

  2. 使用以下代码将标题和子标题的颜色更改为灰色(#232323)

  3. 使用以下代码移除阴影效果和在底部添加一个边框。与第一和第二步不同的是,这里在使用了一个部件的特殊类名

    注:特定的指定部件类名的写法一般是jimu-widget-{widgetname}这种形式

  4. 修改背景颜色,移除右边框和修改图标的透明度

现在可以查看具体的效果了,如下图

  1. 更改和对齐图标

    让标题栏图标变小一点,使用下面代码

    图标的边缘对齐设置

    让图标变成圆形

    让图标的图片变得更小

    修改结果如下

    可以修改选中后的样式

    当屏幕缩小时标题栏按钮会自动进行组合,可以修改该组合按钮的样式,例如,一下代码分别为设置组合按钮的对齐方式、背景颜色、图标大小及文字样式

    其最终显示效果如下

    可以改变标题栏的连接样式,如下

    具体效果

  2. 修改panel的颜色

Panel微件包括了可扩展微件和屏幕微件,所有的微件都可以修改其背景颜色和标题样式,例如下面代码修改了panel的标题颜色和标题背景

将pannel的边框去掉

展示结果如下

  1. 修改弹出框样式

    类似panel的做法,改变弹出框的背景颜色做法如下

  2. 使用不同的字体

    可以设置不同的字体

    如果想使用一些网络字体,可以在style.css文件中引用,如

然后修改 .jimu-main-font. 节点值,例如

WebAppBuilder自定义主题的更多相关文章

  1. ModernUI教程:创建自定义主题

            Modern UI WPF包括两个内置主题(dark与light).在1.0.3版本,您可以构建自定义的主题.Modern UI应用程序通常有在全局资源字典App.xaml中有如下定义 ...

  2. 如何优雅使用Sublime Text3(Sublime设置豆沙绿背景色和自定义主题)

    ♣Sublime Text3软件的下载 ♣设置字体的大小 ♣设置背景色和关键字颜色(Color Scheme 生成器) ♣快速生成html头文件 1.Sublime Text3软件的下载地址和包含的文 ...

  3. ExtJS4.2.1自定义主题(theme)样式详解

    (基于Ext JS 4.2.1版本) UI组件 学习ExtJS就是学习组件的使用.ExtJS4对框架进行了重构,其中最重要的就是形成了一个结构及层次分明的组件体系,由这些组件形成了Ext的控件. Ex ...

  4. Android菜鸟的成长笔记(6)——剖析源码学自定义主题Theme

    原文:Android菜鸟的成长笔记(6)--剖析源码学自定义主题Theme 还记得在Android菜鸟的成长笔记(3)中我们曾经遇到了一个问题吗?"这个界面和真真的QQ界面还有点不同的就是上 ...

  5. Sublime Text3自定义主题

    设置背景色和关键字颜色(Color Scheme 生成器): Color Scheme 生成器地址:http://tmtheme-editor.herokuapp.com/ 首先:点击General- ...

  6. Webappbuilder自定义widget模板

    Webappbuilder自定义widget模板 by 李远祥 到\\widgets\samplewidgets目录下拷贝 CustomWidgetTemplate 文件并重命名为MyWidget 设 ...

  7. Material使用05 自定义主题、黑夜模式\白天模式切换

    需求: 1 不使用materil依赖内建的主题,使用自己创建的主题 2 利用自己创建的主题实现白天模式和黑夜模式 1 自定义主题 1.1 创建自定义主题文件 them.scss // 引入materi ...

  8. 18 UI美化自定义主题样式代码

    自定义主题 假设我们我们对现有的样式不大满意 那么可在工程目录res/values下的styles.xml自定义 方法: 1. res/values下的styles.xml文件中自定义一个标签 < ...

  9. 演练Ext JS 4.2自定义主题

    本文将根据API文档中关于主题的介绍做的一次演练,以便熟悉自定义主题的过程. 练习环境: Sencha Cmd v4.0.1.45 Ruby 1.9.3-p392 firefox 26 首先,使用以下 ...

随机推荐

  1. css3常用样式集锦

    控制线显示0.5px .line:after{ content:""; display:block; position:absolute; width:200%; left:0; ...

  2. macbook pro 突破校园网inode客户端限制分享网络

    [原创] 环境: 1. macbook pro (retina) 2. mac os x 10.9 3. H3C inode for mac 7.0 分享方法: 1.打开inode联网. 2.打开设置 ...

  3. 用简单的http抓包来实现微信公众网页如何模拟登录

    一.准备工具: 系统:XP 浏览器:IE8 抓包工具:HttpWatch(它可以查看url请求的数据包) 二.抓包思路: 浏览器上的任何获取数据的方式都符合http协议的请求,只要发送符合要求的数据就 ...

  4. webstrom 编码

    设置文件保存格式: webstrom的右下角选择你需要的编码

  5. WCF应用场景

    WCF全称Windows Communication Foundation,是Microsoft为构建面向服务的应用提供的分布式通信编程框架,是.NET Framework 3.5的重要组成部分.使用 ...

  6. UVa 11340 - Newspaper

    题目大意:报社根据文章中不同字符的价值付费给作者,给出字符的价值,计算一篇文章应付多少钱给作者. 先统计文章中每个字符出现的次数,再计算价值.直接寻址表(Direct Addressing Table ...

  7. Repository 设计模式介绍(转)

    在DDD设计中大家都会使用Repository pattern来获取domain model所需要的数据. 1.什么事Repository? "A Repository mediates b ...

  8. 屏蔽ps联网激活

    屏蔽ps联网激活C:\Windows\system32\drivers\etc\host127.0.0.1 lm.licenses.adobe.com127.0.0.1 na1r.services.a ...

  9. Eclipse常见操作

    Eclipse打开Package Explorer Window > Show View > Other Java > Package Explorer 然后可以将其拖拽到Eclip ...

  10. WEB 开发者应该具备的 6 大技能?

    1. 界面和用户体验 注意,浏览器的实现标准是不一致的,请确保你的网站能够兼容所有主流的浏览器.最少需要测试的有 Gecko 引擎 (Firefox),WebKit引擎(Safari以及一些手机浏览器 ...