【工作日记】2022-06-09

数字溯月人
• 阅读 689

1. 基础组件Card设计关于内外边距和边框的思考

在我们设计Card组件的时候 可以根据有无边框分为两种情况。比如:
【工作日记】2022-06-09

【工作日记】2022-06-09

这两种区别会造成一些显而易见的视觉效果不同

  • 无边框更适合背景颜色较深,有边框更适合背景为白色
  • 无边框更适合做圆角,即使弧度很大 也并不违和

当无边框Card在白色背景中使用时。会造成无边界感。失去了卡片存在的意义 比如用户可能会提出这种问题:
【工作日记】2022-06-09

实际上就是由于用户将Card单纯当做一小块布局工具来使用了,方便他画title和内容的内间距。是一种错误的用法。

另外当我们从实现的角度来考虑Card 外边距最好只设定一个默认的margin-bottom; 激进一点,甚至可以连margin-bottom都不要,在实际使用中 卡边级别的布局交给专业的布局组件来实现。或者用户自定义更能满足需求。

为什么呢?

假使用户没有自己的UI规范,那么你设置的初始外边据往往是没有意义需要被覆盖的,甚至是副作用的,因为你要考虑到外层布局组件的内边距。即使你有自己的UI规范,那么你也要考虑到组件的应用场景往往是很复杂的。比如卡片套卡片。

(从以上的角度来看 再去看antd的卡片设计就会觉得很有设计感)

2. 记一次技术选型的思考

需求是实现一个这种
【工作日记】2022-06-09

那么已知是有历史其他人在相同项目上实现过这种
【工作日记】2022-06-09

问题:

  • 过往图形和结果目标略有区别(多了中间节点,连线上少内容,多余起始节点,节点内容简陋)
  • 历史代码较为复杂已两年多没人动过,作者早已离职

思考过程:
首先,实现时间上只有一天,还有其他交互,那么重写不太想重写,echarts基础按理里并没有类似图形

看了下过往实现,发现历史采用dagre-d3来实现。但项目用的是react;dagre-d3写法并不react。

搜了搜发现有dagre-d3的react实现库 不过发现dagre-d3-react 并不能解决节点内容写react JSX代码。那么并没有解决核心问题,引入无外乎引入其他学习成本,那么不如直接用dagre-d3;最终实现

点赞
收藏
评论区
推荐文章
晴空闲云 晴空闲云
2年前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
秃头王路飞 秃头王路飞
2年前
总结前端元素的各种高度(上)
HTMLElement.clientHeight只读属性Element.clientHeight对于没有定义CSS或者内联布局盒子的元素为0;否则,它是元素内部的高度(以像素为单位),包含内边距,但不包括边框、外边距和水平
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
皕杰报表(关于日期时间时分秒显示不出来)
在使用皕杰报表设计器时,数据据里面是日期型,但当你web预览时候,发现有日期时间类型的数据时分秒显示不出来,只有年月日能显示出来,时分秒显示为0:00:00。1.可以使用tochar解决,数据集用selecttochar(flowdate,"yyyyMMddHH:mm:ss")fromtablename2.也可以把数据库日期类型date改成timestamp
Stella981 Stella981
3年前
C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法
CWinForm窗体控件Panel修改边框颜色以及边框宽度方法1.新建组件这里可以自定义一个Panel控件起名为PanelEx !(https://oscimg.oschina.net/oscnet/99045
Wesley13 Wesley13
3年前
2020软件工程作业03
<styletable{width:100%;/\表格宽度\/margin:auto;/\外边距\/emptycells:show;/\单元格无内容依旧绘制边框\/fontsize:18px;}table,th,td{border:2pxsolidpink;}li{fontsize:1
Stella981 Stella981
3年前
HTML前端开发之路——盒子背景属性
1.backgroundclip属性简介backgroundclip属性用于设置盒子背景的一个显示区域,分别有borderbox,paddingbox,contentbox;borderbox表明背景是从边框开始,即包含边框;paddingbox表明背景是从内边距开始,不包含边框;
Stella981 Stella981
3年前
CSS外边距合并导致margin越界的问题
外边距合并其实经常会遇到,这里稍微总结一下,以及一些相关的术语一、什么是外边距合并?(折叠外边距)外边距合并指的是当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者;而左右外边距不合并。在CSS当中,相邻的两个盒子(可能是兄弟关系也可能是祖先关系)的外边距可以结合成一个单独的外
飞码LowCode前端技术之画布的设计 | 京东云技术团队
简介本章节从精准定位、分层设计、异步组件、拖拽四个方面分析飞码画布设计。一、精准定位设计飞码画布是一个套件,可对外提供画布能力。精准定位有两种情况,一是目标组件无子组件,而是目标组件有子组件。无子组件:目标组件分为支持与不支持放子组件两种情况。有子组件:鼠
taskbuilder taskbuilder
5个月前
TaskBuilder前端页面UI界面设计
TaskBuilder前端页面UI界面设计为了方便大家快速设计前端页面的UI界面,TaskBuilder提供了可视化的UI界面设计器,在该设计器内,可以从左侧的组件库中拖拽组件到页面上实现组件的添加,TaskBuilder提供了几十种丰富的UI组件,分为容
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
数字溯月人
数字溯月人
Lv1
海上生明月,天涯共此时。
文章
4
粉丝
0
获赞
0