【发布时间】:2010-10-16 03:29:13
【问题描述】:
我有一个<div>,我正在填充一个大小不确定的文件名。如果大小超过了<div> 的长度,那么我希望它被剪掉,最后 3 个字符替换为“...”。目前我有以下内容:
<div id="fileName" class="field-row" title="<%= fileName %>">
<% if(fileName.Length > 20) { %>
Filename: <%= fileName.Substring(0,20) %>...
<% } else { %>
Filename: <%= fileName %>
<% } %>
</div>
这很好用,但如果我有一个由 i 和 W 组成的文件名,那么 div 右侧将有未使用的空间。
例如:
“iiiiiiiii.jpg”
短于:
“WWWWWWWWWW.jpg”
...即使它们的字符数相同。
有没有更好的方法来解决<div> 的长度?
谢谢,
亚伦
【问题讨论】:
-
我认为这需要在客户端,以考虑到各个部分的渲染大小。你会使用 JavaScript 吗? jQuery,MooTools..?文件名将出现在什么元素中?你能显示渲染的html吗? (浏览器中的“查看源代码”,而不是 asp.net)。
-
是的,我可以使用 CSS、JavaScript 和 jQuery,但对于这件小事,我认为我无法使用任何其他工具。
-
你可以覆盖几乎所有浏览器,除了 Firefox,根本不需要任何 JavaScript。看我的回答。
-
CSS 工作得很好,而且要覆盖 FireFox,jQuery 插件是最小的。
标签: asp.net html css asp.net-mvc