首页
学习
活动
专区
圈层
工具
发布

React:Table 那些事(3-3)—— 列宽自适应、列宽拖动

《React:Table 那些事》系列文章,会逐渐给大家呈现一个基于 React 的 Table 组件的定义、设计、开发过程。...这个即将诞生的 React Table 组件,就命名为 webj2ee-table。 ? ? 这一篇实现 webj2ee-table 的2个功能 1. 列宽自适应 2. 列宽拖动 ? 1....列宽自适应 1.1. 如何自适应? 表格的列可以手动配置宽度; ?...若各列的宽度和 的空间平均分配到各列; 若各列的宽度和 > 表格可视区宽度,则各列宽度不变,横向出滚动条; 当表格动态缩放时,上述条件同样满足; 1.2. 实现策略?...列宽拖动 2.1. 采用什么技术? 核心是“拖动”效果 选用市面上主流的 resize 插件即可 例如:react-resizable 2.2. 代码实现? ? 2.3. 效果展示 ?

9.4K41

bootstrap table 设置自定义列宽

,那么可以通过调整列宽和换行来显示全部,且保证列表内容在一屏内可以看到后面的操作按钮和其他字段列。...设置列宽尝试设置 商品ids 列的列宽来保证可以看到后续字段列及操作按钮,在表头增加下列格式限制 css 代码 .table thead th[data-field="goodsIds...查阅资料,需要设置表格 css 的 table-layout 属性值为 fixed ,此时可以自己调整列宽了;再添加 word-break:break-all ,此时数据可以自动换行,修改后的代码如下...; 这两个属性的具体用法和说明table-layout: fixed; 用于设置表格的布局模式为固定模式,使得表格的列宽由列定义指定,且表格的宽度不会随内容的宽度而变化。...这样可以防止单词过长导致内容溢出到这里,本次关于 bootstrap table 设置表格列宽度的操作就完成了,整体操作虽然不是很复杂,但是还是需要记忆一下,以此博文记录,希望可以帮到有需要的小伙伴。

61310
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ElementUI 实现el-table 列宽自适应

    一、概述 Element UI 是 PC 端比较流行的 Vue.js UI 框架,它的组件库基本能满足大部分常见的业务需求。但有时候会有一些定制性比较高的需求,组件本身可能没办法满足。...很多页面都需要用到表格组件el-table。如果没有给el-table-column指定宽度,默认情况下会平均分配给剩余的列。...在列数比较多的情况,如果el-table宽度限定在容器内,单元格里的内容就会换行。强制不换行,内容要么在单元格内滚动,要么就会溢出或被截断。...产品想要的效果是:内容保持单行显示,列间距保持一致,表格超出容器允许水平滚动。el-table-column是支持设置固定宽度的,在内容宽度可预知的情况下,也能满足这个需求。...问题就在于如何让列宽动态适应内容的宽度。在官方文档也没找到这样的选项,应该是组件本身不支持。 二、技术实现 通过插件v-fit-columns即可实现,列宽自适应。

    21.8K41

    javapoi 调整Excel 列宽支持自适应中文字符宽度

    一般来说可以直接使用 Sheet.autoSizeColumn方法自动调整每列的宽度。但是遇到包含中文的列,autoSizeColumn方法计算的列宽是不正确的,算出的宽度不能完整显示中文内容。...startColumnNum 要调整的起始列表号 * @param size 要调整的列表数量 */ public static void autoColumnWidthForChineseChar...; } /** 新的列宽 */ int newWidth = columnWidth; /** 遍历所有的行,查找有汉字的列计算新的最大列宽...*/ int count = chineseCharCountOf(value); /**在该列字符长度的基础上加上汉字个数计算列宽...在网还找到另一个实现就是直接用使用字符串的字节长度计算列宽,不需要统计汉字个数,实际测试效果也是一样的。

    3.3K20

    QTableView表格视图的列宽设置

    那么,QTableWidget便是一个不错的选择。这篇博文主要记录表格的列宽和行高的设置。 方法一:       恰当的设置表格的列宽往往能给表格的美观性带来较好的效果。...::ResizeToContents);   参数QHeaderView::ResizeToContens说明:调整列宽以适应单元内容。...方法二:       注意到QTableView类还有一个成员方法:setColumnWidth(),显然是用来设置表格列宽的。但是,这里有个要求。...所有对setColumnWidth()的调用都要放在setModel()之后。如果在设置View类的Model之前就调用该方法来设置列宽,是不会起作用的。...在Model设置好之后调用setColumnWidth()的效果:第一列的内容一般较长,所以更宽,其他列则更窄。 ?

    8.7K121

    解决bootstrap-table-fixed-columns.js固定的列不能排序问题

    我们用bootstrap-table-fixed-columns插件固定列的时候,发现固定的列不能排序,其他的列是能排序的,需要修改下, 1、将插件的代码 var that = this, $trs...$header.find('tr').clone(true); 这样点击排序的功能是实现了,但是小图标没有变化,因为源码我也看不太明白,直接在外面写的js控制图标的变化。...2、另外写的js代码  $(".fixed-table-header-columns").on("click", "th div.sortable", function() {            ...                $(this).removeClass("asc desc").addClass("asc")             }         })          $(".fixed-table-header...").on("click", "th div.sortable", function() {             $(".fixed-table-header-columns th div.sortable

    4.1K30

    解决bootstrap-table-fixed-columns.js显示列与隐藏列按钮切换表格不对齐

    table class="table-striped table-hasthead nowrap" id="tableTest1" data-search="true" data-show-columns...="true" data-fixed-columns="true" data-fixed-number="3"> table> 含有data-show-columns="true"属性时会在右边显示可以切换列的按钮...结合bootstrap-table-fixed-columns.js插件使用时会出现列不对齐的问题 查看Dom结构发现点击一次具体列切换按钮时会增加一个class 为fixed-table-header-columns...的html片段,我们只需保留最后一个,解决方法 1、先删除多余的html 2、执行表格对齐函数 为了使排序的图标正常显示,需要在onSort的事件中执行能使图标正常显示的代码(注意如果要使固定的列有排序的功能请看我另一篇博客..."); var colnumHead = $(".fixed-table-header-columns"); var len = $(".

    6.1K40

    【基础】固定列宽的表格及示例演示

    引言 对我来说,table 有一个非常有用,支持性也很好的 CSS 属性,但它却很少为人所知。它改变了表格的渲染方式,并生成一个更加稳定可靠的布局。...它就是: table { table-layout: fixed; } table-layout的缺省值是 auto,这个属性值及其效果大家十分熟悉。...该表格的列宽是固定的,不根据内容的多少而变化;表格内容不折行显示,超出行宽部分加省略号部分显示。 [表格样式] 查看演示效果 上述表格的显示效果已经很好了,也比较接近实际项目的需要。...固定列宽的表格算法效果更容易预见,便于使用,同时渲染速度明显更快。因为表格的内容并不会影响单元格的宽度,所以在页面加载过程中,表格不需要频繁重绘。...相信我们都对页面加载过程中表格不断重新调整列宽的恐怖情景记忆犹新。对于固定列宽的表格来说,这种情况就不会发生了。 本文主要汇编自 Chris Coyier 的一篇博客。

    1.6K20

    【通用组件】高效生成 antd Table 组件的操作列

    源码 TableOption 组件源码 背景 业务中台重构后,新的框架基于 antd 整套生态,采用声明式的设计思路,可以通过 JSON 的方式快速构建 CRUD 页面的查询表单、Table 表格、新增编辑表单...但每次定义 Table 的操作列时,都要写一大堆重复的“模板代码”,一来效率低,二来不便于通过交互细节,故对这个场景进行抽象封装,整理成一个通过组件 如上图,没有封装组件之前,每次都要重复写以下类似的...,比如,上面点击“记录”按钮,需要先请求后端详情接口,然后再打开编辑弹框,这时很容易忘记加 loading 效果,影响用户体验 需求分析 基于目前的业务场景,对于这个通过组件,归纳一下几点需求: 操作列只放三种类型的按钮...效果的开或关 PopconfirmBtn 组合 Popconfirm 和 Button 两个组件,定义配置项,实现 JSON 生成需要二次确认的按钮的效果 DropdownBtn 组合 Dropdown...和 Button 两个组件,定义配置项,实现 JSON 生成下拉菜单的按钮 TableOption 自定义操作列按钮,整理上面几种类型的按钮,通过 JSON 声明式生成对应组件

    2.1K00

    简单在 WinUI 仿造 WPF 的 ColumnDefinition SharedSizeGroup 共享列宽功能

    本文将告诉大家如何在 WinUI 3 或 UNO 里面,仿造 WPF 的 ColumnDefinition SharedSizeGroup 共享列宽功能 本文的实现代码是大量从 https://github.com.../Qiu233/WinUISharedSizeGroup 抄的,感谢大佬提供的代码。...我在此基础上简化了对 Behavior 的依赖,在本文末尾放上了全部代码的下载方法 实现效果如下: 在界面放入两个 Grid 容器,这两个 Grid 容器分别都有两列,其中第零个 Grid 里面的首列放入一个带背景的...Border 控件,默认情况下宽度被压缩,期望能通过 SharedSizeGroup 的能力共享其他 Grid 的列宽而被撑开。...gitee 的源,如果 gitee 不能访问,请替换为 github 的源。

    16010

    js奇怪的知识--console.table

    表格的第一列是 index。如果数据 data 是一个数组,那么这一列的单元格的值就是数组的索引。 如果数据是一个对象,那么它们的值就是各对象的属性名称。...注意(在 FireFox 中)console.table 被限制为只显示1000行(第一行是被标记的索引)。...1.直接输出 直接进行尝试,在控制台输出 console.table console.table(["双十一", "双十二", "双十三"]); PS E:\demo> node 1.js ┌────..., "11.11") const two = new Fun("双十二", "12.12") const three = new Fun("双十三", "你是傻子吗,没有13月") console.table...3.console.table() 的应用场景 前面是在通过在编辑器中使用 node.js 输出数据,看看在浏览器中输出会不会不一样的效果。

    5.4K20

    js获取屏幕以及元素宽高的方法

    一.window相关 网页正文部分上:window.screenTop 网页正文部分左:window.screenLeft 屏幕分辨率的高:window.screen.height 屏幕分辨率的宽:...window.screen.width 屏幕可用工作区高度:window.screen.availHeight 屏幕可用工作区宽度:window.screen.availWidth 二.body相关 网页可见区域宽:...document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWidth (包括边线的宽...) 网页可见区域高:document.body.offsetHeight (包括边线的宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:document.body.scrollHeight...相对容器的水平坐标 event.offsetY 相对容器的垂直坐标 六.width/clientWidth/offsetWidth以及height之间区别 width是指可见内容的宽 height是指可见内容的高

    7.4K20
    领券