2012-01-10 133 views
0

我有一个固定宽度为445px的jqGrid。在所有版本的IE(v6,v7,v8和v9),HeaderText显示不正确。在其他浏览器中,它运行良好。 针对此问题的任何解决方案? enter image description herejqGrid - HeaderText的列显示不正确

+0

在IE下,你的意思可能是一些非常老的IE版本IE6? – Oleg 2012-01-10 07:45:44

+0

所有版本中的IE 6,7,8,9的问题 – Somnath 2012-01-10 07:57:23

回答

2

我建议你来验证HTML文件<!DOCTYPE html ...开始:(<!DOCTYPE html><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">取决于您使用的HTML或XHTML方言)。此外,我建议您验证IE的配置是否激活了compatibility mode。如果使用的问题兼容模式可以通过包括

<meta http-equiv="X-UA-Compatible" content="IE=edge" > 

在HTML页面的<head>年初得到解决。我在所有的生产性页面中包含了上面的一行。

0

那么,这是一个Doc类型的相关问题。由于我正在使用组件,并且没有处理页面文档类型,所以我试图找到解决方法。现在它对我来说很好..

// Soon after rendering the jqGrid do the following operation 
    if ($.browser.msie) { 
     var mode = Visifire.Validator.msiemode(); 
     if (mode == 5) { 
      // Applying workaround for HeaderText warping issue in IE 
      var gridParent = vc_JQ(dataGridSettings.parentId); 
      var gridHeader = vc_JQ(".ui-jqgrid-htable", gridParent); 
      var headerTextDivs = vc_JQ("div.ui-th-div-ie", gridHeader); 
      headerTextDivs.width('90%'); 
     } 
    } 
+0

如果使用的页面没有“<!DOCTYPE”,那么错误的文本大小不是唯一的问题。您可能在不同的浏览器中出现错误对齐情况,例如,不同的盒子模型计算等。在这种情况下,浏览器将以[怪癖模式](http://en.wikipedia.org/wiki/Quirks_mode)工作。你也会遇到使用jQuery UI的问题。我建议你,因为组件开发人员不支持在怪异模式下将组件包括在分页中,例如您可能不支持在IE5或IE4中使用组件。 – Oleg 2012-01-12 19:37:35