asp.net CheckBoxList各项最小宽度CSS样式(兼容性good)

  ASP.NET中,CheckBoxList里的选择都是自动宽度的,属性时没有设置各项宽度的设置。

  参考了一下网上的最小宽度样式,

  

复制代码 代码如下:

  /* 最小寬度 */

  .min_width{min-width:300px;

  /* sets max-width for IE */

  _width:expression(document.body.clientWidth < 300 ? "300px" : "auto");

  }

  写成如下:

  

复制代码 代码如下:

  <style>

  .ckblstEffect td

  {

  min-width:80px;

  _width:expression(document.body.clientWidth < 80 ? "80px" : "auto");

  }

  </style>

  

复制代码 代码如下:

  <asp:CheckBoxList ID="ckblstEffect" runat="server" DataTextField="MC"

  RepeatDirection="Horizontal" RepeatColumns="10" CssClass="ckblstEffect"

  DataValueField="ID" ondatabound="ckblstEffect_DataBound">

  </asp:CheckBoxList>

  在遨游4兼容模式(IE7)下不起作用,仔细看样式中的表达式,怎么看都觉得不对劲。

  改成下面的样式就可以了。

  

复制代码 代码如下:

  <style>

  .ckblstEffect td

  {

  min-width:80px;

  width:expression(this.offsetWidth < 80 ? "80px" : "auto");

  }

  </style>

  在IE10、遨游4极速模式及兼容模式下均可正确显示最小宽度,此样式除了用于CheckBoxList外,也可用于DIV等。

  如果有发现其它浏览器不能显示CheckBoxList选项最小宽度的,请通知我。