JGUI源码:实现响应式布局(13)

首先自我检讨下,一直没有认真研究过响应式布局,项目中用的也很少,可能自己做的项目要么是电脑端后台,要么是手机端,两者同时兼容的需求比较少碰到。

脑中有个大致概念响应式就是屏幕缩小了就自动换行或者隐藏显示,就先按自己的理解来闭门造车思考实现过程吧。

1、首先把显示区域分成12等分,bootstrap是这样分的

|1|-|2|-|3|...|12|

2、现在定义不同的大小的盒子用来装物品,假如所在盒子为1024px,显示两个矩形A,B都是512px,那么800px下,肯定是显示不完全了,那么就要么让B隐藏,要么让B换行显示。

3、假如定义显示区域 1024时使用 lg 大盒子,lg-1~lg-12占屏幕比例1~12格。那么大盒子的单元格最大大小为1024/12至少85px

4、现在定义外层类为 jgui-box.

5、查询屏幕大小有两种方式一种是@media,另外一种使用javascript(猜测应该可以),下面使用jquery实现。

6、当window sizechange时,修改jgui-box下数据宽度即可。

首先定义样式,就写三种做测试用,自己可以写个循环把1-12的都写出来。

    <style>
    .lg-4,.md-6,.sm-12
    {
        float:left;
    }
    .jgui-box
    {
        margin:0 auto
    }
    </style>  
 <div>←←这是测试页面</div>
    <div class="jgui-box" style="width:100%">
        <div class="lg-4 md-6 sm-12" style="background:brown;color: white">A</div>
        <div class="lg-4 md-6 sm-12" style="background:blue;color: white">B</div>
        <div class="lg-4 md-12 sm-12" style="background:green;color: white">C</div>
    </div>
    <script type="text/javascript">
    window.onresize = setWidth;
    function  setWidth ()
            {
                var width=$(‘.jgui-box‘).width();
                console.log(width);
                if(width>1024)
                {
                    $(‘.jgui-box .lg-4‘).css(‘width‘,Math.floor(width/12.0*4)-5 );
                    $(‘.jgui-box .lg-4‘).css(‘min-width‘,Math.floor(width/12.0*4-60) );
                }
                else if(width>480 && width<1024)
                {
                    $(‘.jgui-box .md-6‘).css(‘width‘,Math.floor(width/12.0*6)-5);
                    $(‘.jgui-box .md-6‘).css(‘min-width‘,Math.floor(width/12.0*6-50));

                    $(‘.jgui-box .md-12‘).css(‘width‘,Math.floor(width/12.0*12)-5);
                    $(‘.jgui-box .md-12‘).css(‘min-width‘,Math.floor(width/12.0*12-50));
                }
                else
                {
                    $(‘.jgui-box .sm-12‘).css(‘width‘,Math.floor(width/12.0*12)-5);
                    $(‘.jgui-box .sm-12‘).css(‘min-width‘,Math.floor(width/12.0*12-40));
                }
            };
            $(function () { setWidth();
            });
    </script>

修改屏幕宽度时,显示效果如下

>1024

>480 <1024

<480

程序也实现了响应式效果,回头完善下应该也可以勉强使用了, 如果理解的不对请大家指教,程序demo

www.jgui.com

原文地址:https://www.cnblogs.com/zhaogaojian/p/10480865.html

时间: 2024-10-29 02:53:35

JGUI源码:实现响应式布局(13)的相关文章

java 企业站源码 自适应响应式 兼容手机平板PC SSM freemaker 静态引擎主流框架

前台: 支持四套模版, 可以在后台切换 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问速度快,轻便,对服务器负担小 3.网站前端采用主流的响应式布局,同一页面同时支持PC.平板.手机(三合一)浏览器访问 4.springmvc +spring4.3.7+ mybaits3.3  SSM 普通java web(非maven, 赠送pom.xml)  数据库:mysql --------

java 企业门户网站 源码 自适应响应式 freemarker 静态引擎 html5 SSM

1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问速度快,轻便,对服务器负担小 3.网站前端采用主流的响应式布局,同一页面同时支持PC.平板.手机(三合一)浏览器访问 4.springmvc +spring4.3.7+ mybaits3.3  SSM 普通java web(非maven, 赠送pom.xml)  数据库:mysql 1.   网站信息:维护网站基本信息,比如标题.描述.关键词.联系方

Ace 1.3.1 网站管理后台源码 Bootstrap响应式模板主题

Ace 响应式管理后台模板最新版本v1.3.1同步升级,欢迎下载使用,注意:本站提供为官网购买压缩源码版,在官网上用18$买来,现只售20元,可以帮亲省3/4的额外开销哦,需要的亲可以到本博的淘宝小店购买,包升级(免费!). Ace简介: Ace (v1.3.1)是一个轻量.功能丰富.HTML5.响应式.支持手机及平板电脑上浏览的管理后台模板,基于CSS框架Bootstrap制作,Bootstrap版本更新至 3.0,Ace – Responsive Admin Template当前最新版! 淘

Matrix Admin html5网站管理后台源码 Bootstrap响应式模板主题

Matrix Admin 响应式管理后台模板最新版本,欢迎下载使用,注意:本站提供为官网购买未压缩源码版,在官网上用10$买来,现只售15元,可以帮亲省额外开销哦,需要的亲可以到本博的淘宝小店购买. Matrix Admin 简介: Matrix Admin 是一个轻量.功能丰富.HTML5.响应式.支持手机及平板电脑上浏览的管理后台模板,基于CSS框架Bootstrap制作,Bootstrap版本更新至 3.0,Matrix Admin 当前最新版! 淘宝购买地址(新地址,更新至最新的1.3.

vue源码之响应式数据

分析vue是如何实现数据响应的. 前记 现在回顾一下看数据响应的原因. 之前看了vuex和vue-i18n的源码, 他们都有自己内部的vm, 也就是vue实例. 使用的都是vue的响应式数据特性及$watchapi. 所以决定看一下vue的源码, 了解vue是如何实现响应式数据. 本文叙事方式为树藤摸瓜, 顺着看源码的逻辑走一遍, 查看的vue的版本为2.5.2. 目的 明确调查方向才能直至目标, 先说一下目标行为: vue中的数据改变, 视图层面就能获得到通知并进行渲染. $watchapi监

Vue源码之响应式原理(个人向)

浅谈响应式原理 关于响应式原理,其实对于vue这样一个大项目来说肯定有很多细节和优化的地方,在下水平精力有限,不能一一尝试探索,本文仅以将响应式的大致流程个人向的梳理完毕为目的. 对于响应式主要分为三大部分来分析,1.响应式对象:2.依赖收集:3.派发更新. 最后将是个人的分析. 1.响应式对象 (Object.defineProperty) 我们先从初始化数据开始,再介绍几个比较核心的方法. 1.1.initState 文件位置:src/core/instance/state.js 在Vue的

巧用 BootStrap --- 栅格系统(布局)轻松搞定网页响应式布局!

摘要:Bootstrap 为我们提供了一套响应式.移动设备优先的流式栅格系统,合理的使用栅格系统将会使得网站页面布局变得更加简单,在设置了媒体查询之后,响应式网站也无需再单独写了.接下来我以Bootstrap的中文官网首页为模板进行展示其栅格布局的使用方法以及相关知识点.相信在看完这篇文章之后,你完全可以轻松使用栅格布局. 网站效果图如下所示: PC版: 移动版: 1.栅格系统(布局) Bootstrap 提供了一套响应式.移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加

谷歌推出Android 响应式布局控件 FlexboxLayout -盒子模型

今天github 排行榜上突然出现了 谷歌最新推出的Android 最新控件FlexboxLayout . FlexboxLayout 究竟是什么东西呢? fexbox 也称为盒子模型,广泛用于前端开发,做过前端 web 的都知道Bootstrap 中有一套强大的 CSS 网格样式. Bootstrap 的出现 大大提高了前端开发的效率,并且引领了响应式布局.跨平台开发的潮流. FlexboxLayout  就是类似于 bootstrap 中见网格系统的 强大控件 先上几张谷歌示例程序的截图 F

基于Bootstrap3制作响应式布局网站(一)

前言 原创文章,欢迎转载,请保留出处. 有任何错误.疑问或者建议,欢迎指出. 我的邮箱:[email protected] 现在的上网设备十分多,每种设备的分辨率都不一样,传统的网站开发需要花很大功夫才能实现不同分辨率下兼容布局,而Bootstrap的出现使得网站开发更加简单快捷.Bootstrap是Twitter推出的一个用于前端开发的开源工具包,其中的一个特性就是支持响应式布局. 何为响应式布局 我们可以查阅百度百科得到比较权威的解析: 响应式布局是Ethan Marcotte在2010年5