javascript - 如何对齐垂直:middle filter icon in Kendo UI Grid Header

标签 javascript css kendo-ui kendo-grid

我正在像这个 jsFiddle 示例中那样自定义 kendo Grid header 样式。

Sample jsFiddle which demonstrates my issue

 $("#test-grid-2").kendoGrid({
  columns: [{
    field: "user.screen_name",
    title: "This is my centered header",
    headerAttributes: { "class": "center-header"},
      filterable:true
  },
           {
    field: "text",
    title: "This is my long header title to test",
    headerAttributes: { "class": "wrap-header"},
               filterable:true,
               width:100
  }],
  dataSource: viewModel.remoteSource,
    filterable:true
});

以及对应的CSS:

.k-grid-header .center-header {
  text-align: center;
}
.k-grid-header .wrap-header {
  height: auto;
  overflow: visible;
  white-space: normal;
}

但是,如果我的列宽较窄,我会得到过滤器图标未垂直对齐,如示例 fiddle 的第二列所示。

有人知道怎么解决吗?

最佳答案

我没有完美的解决方案,但我最近一直在做这方面的工作。

基本问题是 <a>包含过滤器图标的元素向右浮动,这意味着它会上升到父元素的顶部。如果对比两者<th>在 Dev Tools 元素中,您会看到,因为它们是垂直居中对齐的,所以两个过滤器图标实际上位于其各自父项的右上角。

如何修复?

我没有很好的答案,但我现在正在研究一种可能的 CSS 方法:

.k-grid-header .k-header {
    position: relative;
}
.k-header > .k-grid-filter {
    position: absolute;
    float: none;
    top: 35%;
    right: 6px;
}

参见:http://jsfiddle.net/C4KWQ/66/

关于javascript - 如何对齐垂直:middle filter icon in Kendo UI Grid Header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25904035/

相关文章:

css - 将元素水平居中到其容器,同时避免重叠

jquery - 如何检查背景内联是否存在

html - CSS 中的马赛克图片库

javascript - 如何在展开和折叠时自动调整 Kendo TreeList 列?

php - Tinymce mceToggleEditor 滚动/焦点问题

javascript - 根据图像选择更改背景图像 CSS 属性

kendo-ui - 如何让 Backbone 路由器 + Kendo UI Mobile (tabstrip) 协同工作?

javascript - 如何使用scrollTo(0,0)打开带有滚动条的Kendo窗口?

javascript - 使用 cytoscape.js 循环节点

javascript - JavaScript 变量如何从数据库或 XML(或其他)文件中读取值?是否可以?