Oracle JET(三)Oracle JET 响应布局
Oracle JET 提供了一系列的 CSS 样式以直接使用。
Oracle JET CSS样式链接:http://docs.oracle.com/middleware/jet310/jet/reference-css/index.html
进入主题,在Oracle JET 的样式中提供了响应式布局。
一、Oracle JET Flex布局
要创建Flex布局,首先将 oj-flex 添加到容器中,然后将 oj-flex-item 添加到每个自容器。
例1:
<div id="container">
<div class="oj-flex">
<div class="oj-flex-item">A</div>
<div class="oj-flex-item">B</div>
<div class="oj-flex-item">C</div>
</div>
<div class="oj-flex">
<div class="oj-flex-item">D</div>
<div class="oj-flex-item">E</div>
<div class="oj-flex-item">F - 这里添加更多内容来对比,这里添加更多内容来对比</div>
</div>
</div>
显示:

当子容器宽度大于最大显示宽度,则会自动换行:

1.Oracle JET flex 布局默认属性为 auto ,可缩小或增长。设为 initial ,只允许缩小,不允许增长。
例2:(oj-flex-items-pad用来填充撑开,只有字母撑开太小)
<div id="container" class="oj-flex-items-pad">
<div class="oj-flex oj-sm-flex-items-initial">
<div class="oj-flex-item">A</div>
<div class="oj-flex-item">B</div>
<div class="oj-flex-item">C</div>
</div>
<div class="oj-flex">
<div class="oj-flex-item">D</div>
<div class="oj-flex-item oj-sm-flex-initial">E</div>
<div class="oj-flex-item">F</div>
</div>
</div>
显示:

2.Oracle JET flex 布局默认自动换行,像例1,可在父容器添加 oj-sm-flex-wrap-nowrap ,取消默认换行。
例3:
<div id="container" class="oj-flex-items-pad">
<div class="oj-flex">
<div class="oj-flex-item">A</div>
<div class="oj-flex-item">B</div>
<div class="oj-flex-item">C</div>
</div>
<div class="oj-flex oj-sm-flex-wrap-nowrap">
<div class="oj-flex-item">D</div>
<div class="oj-flex-item">E</div>
<div class="oj-flex-item">F - 这里添加更多内容来对比,这里添加更多内容来对比</div>
</div>
</div>
显示:

二、oracle JET 网格布局
Oracle JET 提供了12列的网格系统用于响应式布局
oj-sm-num 小屏幕 oj-md-num 中屏幕 oj-lg-num 大屏幕 oj-xl-num 超大屏幕
例4:
<div id="container" class="oj-flex">
<div class="oj-md-6 oj-lg-2 oj-xl-8 oj-flex-item">A</div>
<div class="oj-md-3 oj-lg-4 oj-xl-2 oj-flex-item">B</div>
<div class="oj-md-3 oj-lg-6 oj-xl-2 oj-flex-item">C</div>
</div>
显示:
sm:

md:

lg:

xl:

1. Grid convenience classes:
可以轻松地设置具有指定宽度的两列和四列布局。
方法:在父容器的“父级”上添加 oj-size-odd-cols-num 和 oj-size-even-cols-num
两列布局:指定奇数列使用12列中的多少,剩余偶数列占用。
例5:
<div id="container">
<div class="oj-md-odd-cols-4">
<div class="oj-flex">
<div class="oj-flex-item">A</div>
<div class="oj-flex-item">B</div>
</div>
</div>
<div class="oj-flex">
<div class="oj-md-4 oj-flex-item">A</div>
<div class="oj-md-8 oj-flex-item">B</div>
</div>
</div>
显示:

可见,和直接设置 oj-md-num 相同效果。
四列布局:指定奇数列和偶数列的占用数
例6:
<div id="container">
<div class="oj-md-odd-cols-2 oj-md-even-cols-4">
<div class="oj-flex">
<div class="oj-flex-item">A</div>
<div class="oj-flex-item">B</div>
<div class="oj-flex-item">C</div>
<div class="oj-flex-item">D</div>
</div>
</div>
<div class="oj-flex">
<div class="oj-md-2 oj-flex-item">A</div>
<div class="oj-md-4 oj-flex-item">B</div>
<div class="oj-md-2 oj-flex-item">C</div>
<div class="oj-md-4 oj-flex-item">D</div>
</div>
</div>
显示:

三、oracle JET 响应类JavaScript API
oracle JET 提供了 ResponsiveUtils 和 ResponsiveKnockoutUtils 响应的 JavaScript API提供,具体参阅 API 文档
http://docs.oracle.com/middleware/jet320/jet/reference-jet/oj.ResponsiveUtils.html
使用例子:
1.根据屏幕尺寸更改组件
例7:
HTML:
<div id="container">
<button id="btndisplay" data-bind="ojComponent:{
component: 'ojButton',
icons: { start: 'oj-fwk-icon oj-fwk-icon-calendar'},
label: 'calendar',
display: large() ? 'all' : 'icons'
}"></button>
</div>
JS:(在ViewModule下编写)
define(['ojs/ojcore', 'knockout', 'jquery', 'ojs/ojknockout', 'ojs/ojbutton'],
function(oj, ko, $) {
function DashboardViewModel() {
var self = this;
var lgQuery = oj.ResponsiveUtils.getFrameworkQuery(oj.ResponsiveUtils.FRAMEWORK_QUERY_KEY.LG_UP);
self.large = oj.ResponsiveKnockoutUtils.createMediaQueryObservable(lgQuery); }
return new DashboardViewModel();
}
);
显示:
小尺寸屏幕下: 大尺寸屏幕下:

根据屏幕大小调整文字和图片类似方法。
四、其他响应类 classes
oj-size-hide:在指定的 size中 隐藏内容。
oj-size-text-align-end:在指定的 size 中文本内容位置为末尾。
oj-size-float-end:在指定 size 中元素向右浮动。
oj-size-float-start:在指定 size 中元素向左浮动。
Oracle JET(三)Oracle JET 响应布局的更多相关文章
- JBOSS EAP 6 系列三 Oracle、Mysql数据源的配置(驱动)—认识模块的使用
本文介绍JBOSS EAP 6.2中Oracle数据源的配置方式.结合之前JBOSS EAP 6.2新功能,本文初识JBOSS模块申明式容器这一特性. 模块申明式容器:JBOSS EAP不再有lib的 ...
- Oracle数据库三种备份方案
Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用 ...
- 7.27实习培训日志-Oracle SQL(三)
Oracle SQL(三) 视图 特性 简单视图 复杂视图 关联的表数量 1个 1个或多个 查询中包含函数 否 是 查询中包含分组数据 否 是 允许对视图进行DML操作 是 否 CREATE [OR ...
- Oracle数据库三种标准的备份方法
Oracle数据库的三种标准的备份方法: 1.导出/导入(EXP/IMP). 2.热备份. 3.冷备份. 注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一.导出/导入(Export/Imp ...
- jdbc连接oracle的三种方法
jdbc连接oracle的三种方法 使用service_name,配置方式:jdbc:oracle:thin:@//<host>:<port>/<service_name ...
- Oracle GoldenGate 三、加密
写在开始前 从上周开始,我花了大量的业余时间阅读GoldenGate官方文档,并根据文档实践和进一步学习了解GoldenGate,以下便是根据官方文档理解总结的GoldenGate学习内容: Orac ...
- [译]MVC网站教程(三):动态布局和站点管理
目录 1. 介绍 2. 软件环境 3. 在运行示例代码之前(源代码 + 示例登陆帐号) 4. 自定义操作结果和控制器扩展 1) OpenFileResult 2) ImageR ...
- [转]CSS3 Media Query实现响应布局
讲到响应式布局, 相信大家都有一定的了解,响应式布局是今年很流行的一个设计理念,随着移动互联网的盛行,为解决如今各式各样的浏览器分辨率以及不同移动设备的显示效果, 设计师提出了响应式布局的设计方案.今 ...
- Oracle实例和Oracle数据库(Oracle体系结构)
--========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --==================== ...
随机推荐
- Java中字符编码和字符串所占字节数 .
首 先,java中的一个char是2个字节.java采用unicode,2个字节来表示一个字符,这点与C语言中不同,C语言中采用ASCII,在大多数 系统中,一个char通常占1个字节,但是在0~12 ...
- 56 道高频 JavaScript 与 ES6+ 的面试题及答案
56 道高频 JavaScript 与 ES6+ 的面试题及答案 :https://segmentfault.com/a/1190000020082089?utm_source=weekly& ...
- Redis哨兵功能与集群搭建
6.redis哨兵功能 Redis-Sentinel Redis-Sentinel是redis官方推荐的高可用性解决方案,当用redis作master-slave的高可用时,如果master本身宕机, ...
- Python 矩阵(线性代数)
Python 矩阵(线性代数) 这里有一份新手友好的线性代数笔记,是和深度学习花书配套,还被Ian Goodfellow老师翻了牌. 笔记来自巴黎高等师范学院的博士生Hadrien Jean,是针对& ...
- Ubuntu16.04 php7.1安装redis扩展
sudo apt install php7.1-redis //修改php配置 vi /etc/php.ini 添加extension=redis.so
- 获取sender进程所产生的trace文件
直接开启数据库实例级别的sql_trace是不现实的,会对所有连接到oracle的session都产生sql_trace,这样会产生大量的trace文件(垃圾文件),因此为跟踪特定进程的sql信息,可 ...
- CF839E Mother of Dragons 最大团 Bron-Kerbosch算法
题意简述 给你一个\(n\)个节点的无向图\(G=\{V,E\}\)的邻接矩阵\(g\)和每个点的点权为\(s_i\),且\(\sum_{i=1}^n s_i = K\),要你求出\(\mathrm{ ...
- Python 序列化 pickle/cPickle模块
Python 序列化 pickle/cPickle模块 2013-10-17 Posted by yeho Python序列化的概念很简单.内存里面有一个数据结构,你希望将它保存下来,重用,或者发送给 ...
- vue-element添加修改密码弹窗
1.新建修改密码vue文件CgPwd.vue 代码如下: <template> <!-- 修改密码界面 --> <el-dialog :title="$t('c ...
- button标签设置line-height问题
默认设置line-height是不会有问题的. 加了边框后就会出现问题. 如果想要解决的话.就调整行高,自己满意为止.