You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dynamics CRM自定义拖拽子网格如何实现div内图标与文本居中显示

解决方案

你只需要修改图标类、补充CSS样式,完全复用Dynamics CRM自带的符号字体和设计规范,就可以实现和默认网格完全一致的展示效果,无需额外引入资源:

1. 替换图标类并调整DOM属性

你当前使用的InsertKbArticle-symbol是知识库插入图标,Dynamics CRM默认空网格使用的图标类为EmptyGrid-symbol,直接替换即可,同时给文本节点添加CRM自带的文本样式类empty-grid-text,复用原生样式。
修改后的JS代码如下:

//Drop-zone placeholder text
if (this.directionCode) {
    debugger;
    this._divNoRecordsContainerGrid = document.createElement("div");
    this._divNoRecordsContainerGrid.className = "cc-grid-noRecords-Container";
    this._divNoRecordsContainerGrid.id = "gridNoRecords";

    this._divNoRecordsContainer = document.createElement("div");
    // 新增对齐类,复用CRM原生flex布局规则
    this._divNoRecordsContainer.className = "flexbox flex-align-center flex-direction-col justify-center";
    this._divNoRecordsContainer.setAttribute("role", "presentation");
    this._divNoRecordsContainer.title = "No data available";

    this._spanNoRecordsIcon = document.createElement("span");
    // 替换为默认空网格图标类
    this._spanNoRecordsIcon.className = "symbolFont EmptyGrid-symbol";
    this._spanNoRecordsIcon.setAttribute("aria-hidden", "true");

    this._spanNoRecordsText = document.createElement("span");
    // 新增原生空状态文本类
    this._spanNoRecordsText.className = "empty-grid-text";
    this._spanNoRecordsText.innerHTML = "Drag and drop your attachments here";

    this._divNoRecordsContainer.appendChild(this._spanNoRecordsIcon);
    this._divNoRecordsContainer.appendChild(this._spanNoRecordsText);
    this._divNoRecordsContainerGrid.appendChild(this._divNoRecordsContainer);

    this._attachmentContainer.appendChild(this._divNoRecordsContainerGrid);
}

2. 补充CSS样式匹配原生间距

修改你的CSS类,添加间距和对齐规则,和原生网格保持一致:

.cc-grid-noRecords-Container {
    display: block;
    padding: 2rem 0;
    width: 100%;
}
.cc-grid-noRecords-Container .EmptyGrid-symbol {
    font-size: 3rem;
    color: #666666;
    margin-bottom: 0.8rem;
}
.cc-grid-noRecords-Container .empty-grid-text {
    font-size: 0.875rem;
    color: #666666;
    font-weight: 400;
}

效果验证

修改完成后,你的自定义拖拽网格的图标样式、大小、文本字体、行高、间距都会和Dynamics CRM默认子网格完全一致,且兼容CRM所有主流版本,不会因为系统升级出现样式错乱问题。

内容的提问来源于stack exchange,提问作者Furkan Karacan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 13:18:02