一、目标效果:

当浏览器窗口大小改变时。panel宽度始终为浏览器宽度的50%,panel高度则根据其中内容的多少而变化,横向竖向滚动条皆不出现。且不需要重新刷新浏览器或者其他js代码

兼容:chrom .ie7~11

二、代码:

关键API:fit属性设置为true.默认是false

API地址:http://www.jeasyui.com/documentation/index.php#

关于这个fit的解释,官方文档这么说的:

When true to set the panel size fit it's parent container. The example below shows a panel which can be auto resized to max inner dimensions of its parent container。

意思就是:让panel尺寸适应它的父元素尺寸。

(不看中间过程,直接跳到结论)

官方API例子:html

 <div class="wrapper">
  <div class="easyui-panel my-panel" title="标题" data-options="fit:true">
    <p>panel 内容111111111111111</p>
    <p>panel 内容2222222222222222222</p>
5     <p>333333333333333333333333333333333333333</p>
6   </div>
</div>

css

.wrapper{
width:50%;/*让父元素的宽度为50%*/
/*高度不用设置*/
}

复制上述HTML和CSS代码到编辑器里,然后在浏览器中打开。。发现:panel宽度确实始终为浏览器的50%,因为父元素的宽度是50%,而panel在fit:true的作用下塞满了其父元素。

但是panel body中的文本不会自动换行,所以出现了横向滚动条。

为了解决这个问题,CSS上加入以下代码:

.wrapper{
width:50%;/*让父元素的宽度为50%*/
/*高度不用设置*/
  word-wrap: break-word;
word-break: normal;/*让文字自动换行*/
}

但是,依旧有个问题:当缩小浏览器宽度到一定小时,会出现竖向滚动条。

所以,再加入以下css:

.wraper .panel-body{
height: auto !important;
}

这下子。再怎么缩小浏览器,这个panel都是自适应宽度,而且不会出现横竖向滚动条了。

总结:整合以上所有CSS和Html代码。完整例子如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>panel</title>
<link rel="stylesheet" href="http://www.jeasyui.net/Public/js/easyui/themes/default/easyui.css"/>
<link rel="stylesheet" href="http://www.jeasyui.net/Public/js/easyui/themes/icon.css"/>
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://www.jeasyui.net/Public/js/easyui/jquery.easyui.min.js"></script>
<style>
.wrapper{
width:50%;/*高度不用设置*/
word-wrap: break-word;
word-break: normal;
background-color:#444;
}
.wrapper .panel-body{
height: auto !important;
}
</style>
</head>
<body>
<div class="wrapper">
<div class="easyui-panel my-panel" title="标题" data-options="fit:true">
<p>panel 内容111111111111111</p>
<p>panel 内容2222222222222222222</p>
<p>333333333333333333333333333333333333333</p>
</div>
</div>
</body>
</html>

easyui panel自适应浏览器宽度的更多相关文章

  1. EasyUI设置Layout自适应浏览器宽度和高度

    //设置自适应浏览器宽度和高度 function setLayoutHeight() { var height = $(window).height() - 20; $("#main_lay ...

  2. div等比例缩放-------纯CSS实现自适应浏览器宽度的正方形

    摘自:https://blog.csdn.net/u010513603/article/details/78200207 1.方案一:CSS3 vw 单位 CSS3 中新增了一组相对于可视区域百分比的 ...

  3. easyui tabs内容panel自适应窗体宽度方法

    废话不说,直接上代码: $('#Teacherwin_details').window({ title: '查看教职工信息', width: 800, height: 520, top: ($(win ...

  4. JQERY EasyUI Tabs 选项卡 自适应浏览器宽度高度 解决方案

    <script type="text/javascript"> $(window).resize(function () { $('#tt').tabs({ width ...

  5. easyui panel自适应问题

    项目中要用到easyui,使用也有几年时间了,刚开始使用还不错,毕竟只是简单的增删改查数据,不过到后面越来越觉得easyui不如extjs了,好多复杂一点的问题,easyui表现就力不从心了,题外话就 ...

  6. ExtJS6 自适应浏览器窗口大小

    ExtJS6官方文档推荐使用Ext.on.做一个小例子,创建一个Panel显示在页面上,使它的大小随浏览器变化,自适应浏览器窗口大小. html:增加一个css样式给Panel加上红色border. ...

  7. easyUI panel组件

    easyUI panel组件: 属性的使用: <!DOCTYPE html> <html lang="en"> <head> <meta ...

  8. 自适应图片宽度的jQuery焦点幻灯轮播代码

    自适应图片宽度的jQuery焦点幻灯轮播代码 注意要1.7.2版本的jq才支持点击后显示点击的图片,不然就是一直顺序播放 演示   XML/HTML Code <div id="sli ...

  9. 布局-EasyUI Panel 面板、EasyUI Tabs 标签页/选项卡、EasyUI Accordion 折叠面板、EasyUI Layout 布局

    EasyUI Panel 面板 通过 $.fn.panel.defaults 重写默认的 defaults. 面板(panel)当做其他内容的容器使用.它是创建其他组件(比如:Layout 布局.Ta ...

随机推荐

  1. JavaScript如何把字符串中每个单词首字母转化为大写

    先上代码,再做解释. 思路分析: 1. 首先先把字符串中的单词转化为小写(toLowerCase),再对其进行截取(split),截取依据为按照空格截取: 2. 此时经过步骤一之后得到的东西是一个数组 ...

  2. 【手机自动化测试】monkey测试

    1             概述 Monkey测试是Android自动化测试的一种手段.Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. 当Mon ...

  3. 求连续出现5次以上的值,并且取第5次所在id

    关键字:求连续出现5次以上的值,并且取第5次所在id 关键字:求在某列连续出现N次值的的数据,并且取第M次出现所在行 需求,求连续出现5次以上的值,并且取第5次所在id SQL SERVER: --测 ...

  4. Oracle SQL语句积累

    字段合并: select EVFOUNDATIONTYPEA || EVFOUNDATIONTYPEB|| EVFOUNDATIONTYPEC ||EVFOUNDATIONTYPED as b fro ...

  5. SLG手游Java服务器的设计与开发——数据管理

    文章版权归腾讯GAD所有,禁止匿名转载:禁止商业使用:禁止个人使用. 一.前言 上文介绍了我们的SLG手游的服务器架构设计以及网络通信部分,本文介绍数据管理部分,在数据存储方面,我选择了Mysql.M ...

  6. uva1292 树形dp

    这题说的是给了一个n个节点的一棵树,然后 你 从 这 棵 树 的 n 个 节点中 选择 尽量少的 点使得 每条边都至少有一个 士兵看守 dp[0][i]+=dp[1][j] dp[1][i]+=min ...

  7. Transactions and beyond it..

    While data integrity is managed very effectively within a single database with row locking, deadlock ...

  8. 转 已知两点坐标和半径求圆心坐标程序C++

      数学思想:利用圆方程和直线方程 已知两点坐标和半径求圆心坐标程序 #include <iostream> #include <fstream> #include <c ...

  9. HDU6447 网络赛 YJJ's Salesman(DP + 线段树)题解

    思路:若用dp[i][j]表示走到(i,j)的最大值,那么dp[i][j] = max(dp[i - 1][j],dp[i][j - 1],dp[i - 1][j - 1] + v),显然O(n^2) ...

  10. reason: image not found的解决方案

    在制作framework时遇到真机运行时导致的reason: image not found允许崩溃的问题,下面是我的解决方案: 首先我们分析一下出现这种情况的原因,原因就是framework找不到镜 ...