我想将标题栏文本放在jqGrid上,而不会弄乱打开/关闭图像。但我只能将两个文本和打开/关闭按钮图像集中在一起。我将非常感谢有关如何在保持anchor-image 定位的同时获取文本居中的一些提示。
这是Chrome的Inspector显示的标记:
<div class="ui-jqgrid-titlebar ui-widget-header ui-corner-top ui-helper-clearfix">
<a role="link" href="javascript:void(0)"
class="ui-jqgrid-titlebar-close HeaderButton" style="right: 0px;">
<span class="ui-icon ui-icon-circle-triangle-n"></span>
</a>
<span class="ui-jqgrid-title">Titles</span>
</div>
由于
答案 0 :(得分:3)
尝试使用以下
jQuery(".ui-jqgrid-title").replaceWith('<div style="text-align: center;"><span>' +
jQuery(".ui-jqgrid-title").text() + '</span></div>');
或
jQuery(".ui-jqgrid-title").replaceWith(
'<div style="text-align: center; padding: .3em .2em .2em .3em;"><span>' +
jQuery(".ui-jqgrid-title").text() + '</span></div>');
更新:我应该稍微修复一下我的解决方案1)允许setCaption
方法继续工作; 2)如果一个页面上有一个jqGrid,那么工作正确:
var captionDiv = jQuery("#list")[0].grid.cDiv;
var titleSpan = jQuery(".ui-jqgrid-title",captionDiv);
titleSpan.css ("float", "none");
titleSpan.parent().css ("text-align", "center");
在代码中,“list”是网格的<table>
元素的id。 jqGrid(jQuery("#list")[0]
)的DOM元素使用grid
属性进行扩展,该属性具有三个重要jqGrid组件(cDiv
- caption,hDiv
- 表头和bDiv
- 表体)。我们使用.grid.cDiv
以最快的方式获取标题的DOM元素(网格标题)。然后我们给出标题的span
元素并覆盖"float: left"
类的"ui-jqgrid-title"
样式,这可能使您成为最大的问题。最后,我们将父div
元素的其他样式设置为"text-align: center"
以完成所有工作。