css - Angular SlickGrid 对齐标题文本

标签 css angular slickgrid

我正在使用 Angular SlickGrid 并希望将列标题中的文本居中或右对齐。并非所有列都以相同的方式。

我发现,列定义中有一个 headerCssClass 属性,但我一直尝试,这种样式似乎从未被应用。

对于列定义:

    {
        id: 'sourceNumber',
        name: 'SourceNumber',
        field: 'SourceNumber',
        sortable: true,
        width: 150,
        headerCssClass: 'text-right',
        cssClass: 'text-right'
    },

在 CSS 文件中:

    .text-right {
        text-align: right;
    }

它对于单元格内容效果很好。但页眉中的文本仍然左对齐。

我做错了什么?

最佳答案

为了对齐网格单元,我通常使用为此目的创建的格式化程序 alignCenteralignRight (请参阅 Formatters - Wiki 中的所有格式化程序),您也可以像您一样使用额外的 CSS 类。

如果您保留额外的 CSS 类,那么 .slick-column-name 类上会有一个额外的 float: left ,您可能需要将其取消,并且这可能就是阻止(或取消)你的 CSS 的原因。但我必须说,它位于左侧是有原因的,将其移动到不同位置(尤其是右侧)并不理想,因为您可能会与标题菜单和排序图标发生冲突(如果您向右对齐,则肯定会发生冲突)

.slick-column-name {
  float: none;
}

另请注意,列定义 name 属性也接受 HTML 代码(尽管可能没有记录),但即便如此,您可能也必须先取消 float

this.columnDefinitions = [
  { id: 'firstName', field: 'firstName', name: '<span style="color: blue">First Name</span>' },
];

最后,你还应该看一下所有的 SASS 变量(也有 CSS 变量等效名称),你可以看到这个 _variables 中的所有变量。文件中,有很多可用的变量,但似乎不包含任何用于标题对齐的变量(我们将来可以为此添加变量),还有这个 CSS Styling - Wiki有这方面的信息。

请注意,我是 Angular-Slickgrid 的作者

关于css - Angular SlickGrid 对齐标题文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70275543/

相关文章:

数百万行的 JavaScript 数据网格

javascript - Slickgrid onChange 不保留单元格 CSS 样式

javascript - CSS 3D Transform——打开一张卡片

css - Bootstrap 3 向表格中的单元格添加标签

html - 我怎样才能让一个图像作为一个按钮,并让它在点击时执行一个 Action (启动一个关键帧事件,运行一个脚本)?

javascript - 分离 TypeScript 和 JavaScript 文件

angular - 何时取消订阅 `route.params` observable

javascript - svg circle - 无法绑定(bind)到 cx,因为它不是已知的 native 属性

javascript - 防止图像调整 div 大小

Angular-Slickgrid 显示空白记录