`

firefox和IE下,title元素无法换行的替换方式

阅读更多
今天写代码,需要在页面上提示消息,为了省事,没有使用第三方的tip插件,想直接用html元素的title来显示。

结果悲剧了,发现实现不了,该死的浏览前兼容问题又来了,IE下可以通过转义字符搞定,倒是火狐下死活不行, W3C规范,不惧强制效力啊~ 汗一把...唉,无奈只好用了替代方法:

原来程序:
后台封装数据程序:
for (String dtcID : rtEcPackage.getErrorCodeIDList()) {
                            
   sb.append(dtcID + " - ");
   // &#10也可以, 但不能用<br/>,否则页面输出有问题
   sb.append(DtcMessageConfigBoundle.getMessage(dtcID) + "&#13;");
}


前台js显示输出:
html += "<div id='" + key + "' class='carImg' title='" + value.dtcMsg + "'> 
     + "A:<img src='" + $.webPathresources/images/demo/car1.jpg' class='carIcon'
     />" + key+ "</div>";
});

// 后台不能用<br/>,否则生成的代码有问题,IE和火狐下都自动加了结束符</div>
<div title="P3045 - Undefined DTC<br></div>" class="carImg" id="SZ00">
    A:<img class="carIcon" src="http://127.0.0.1:8080/ams/resources/images/demo/car1.jpg">SZ00
</div>
// 实际应该是这样
<div title="P3045 - Undefined DTC<br/>" class="carImg" id="SZ00">
    A:<img class="carIcon" src="http://127.0.0.1:8080/ams/resources/images/demo/car1.jpg">SZ00
</div>

后台使用<BR/>的提示效果,多了了</div>:



后台使用&#13或"&#10的提示效果--FF:



后台使用&#13或"&#10的提示效果--IE:




替换方案,即加入CSS控制换行,同时不使用div的title,改用其他元素,如span元素来充当title

后台封装数据程序:
for (String dtcID : rtEcPackage.getErrorCodeIDList()) {
                            
   sb.append(dtcID + " - ");
   // 可以使用BR
   sb.append(DtcMessageConfigBoundle.getMessage(dtcID) + "<br/>");
}


前台样式br:
/** title换行的替代方案,支持FF和IE*/
div.br span {
    display: none;
    border: 1px solid #000;
    text-decoration: none;
    background-color:#D1E9E9;
    position: absolute;
    padding: 3px;
    left: 60px;
    /** 最顶层显示 */
    z-index: 99;
    /** 半透明 */ /** IE **/
    filter: alpha(opacity = 90);
    /** 非IE **/
    opacity: 0.9;
}

div.br:hover span {
    display: block;
}


前台js显示输出:
html += "<div id='" + key + "' class='carImg br'>A:<img src='" + $.webPath 
     + "resources/images/demo/car1.jpg' class='carIcon'/>" + key
     + "<span id='titleTip'>" + value.dtcMsg + "</span></div>";
     // html += value; 
    // html += key;
});


替换方案的显示效果,IE和Firefox均ok:


  • 大小: 6.8 KB
  • 大小: 14.2 KB
  • 大小: 9.5 KB
  • 大小: 20.5 KB
分享到:
评论

相关推荐

    firefox,IE 都兼容字符强制换行

    标题提到的"firefox,IE 都兼容字符强制换行"是指在Firefox和Internet Explorer(IE)这两种主流浏览器上实现文本强制换行的技术。虽然这两款浏览器在处理某些HTML和CSS特性时可能存在差异,但可以通过一些方法来实现...

    在Firefox下直接调用IE浏览器(IETab这个插件).zip

    总的来说,IETab是Firefox用户的一个实用工具,它通过在Firefox内嵌入IE的渲染引擎,使得用户可以在不离开Firefox的情况下访问那些只支持IE的网站。这对于需要在多个浏览器间频繁切换的用户来说,无疑提高了工作效率...

    支持IE和FF同时自动换行

    本文将详细介绍一种通过使用`&lt;table&gt;`标签结合特定CSS属性的方式,来实现文本在Internet Explorer (IE) 和 Firefox (FF) 等浏览器中的自动换行效果。 #### 二、核心概念和技术背景 ##### 2.1 CSS自动换行相关属性 ...

    css 自动换行 强制换行属性 (firefox+ie)

    例如,Firefox 和 Internet Explorer 都支持这两个属性,但早期版本的 IE 可能需要使用私有属性 `-ms-word-wrap` 和 `-ms-word-break` 来实现相同的效果。在实际应用中,通常建议结合使用 `word-wrap: break-word;` ...

    Firefox IE Tab

    "Firefox IE Tab"是一款专为火狐浏览器设计的扩展,它允许用户在Firefox中以Internet Explorer内核的方式浏览网页。这个扩展对于那些需要在不同浏览器环境中测试网站兼容性的开发者或者经常在两个浏览器间切换的用户...

    Firefox和IE兼容参考

    在网页开发过程中,Firefox(火狐浏览器)和Internet Explorer(IE浏览器)的兼容性问题一直是一大挑战。这两个浏览器在解析HTML、CSS以及JavaScript时有着不同的实现方式,导致某些代码在Firefox下正常运行,但在IE...

    让IE和火狐同时兼容

    important`的情况下设置为`28px`,这可以有效地解决IE与Firefox之间`margin`计算方式的不同。 - 注释:当使用`!important`时,需要考虑到IE浏览器可能不会正确识别它。因此,建议使用类似`div { margin: 30px; ...

    IE6.0、IE7.0 与FireFox CSS兼容的解决方法

    在网页设计中,CSS(层叠样式表)的兼容性问题常常困扰着开发者,尤其是在处理IE6.0、IE7.0与Firefox等不同浏览器之间的差异。以下是一些解决这些浏览器间CSS兼容问题的方法: 1. **DOCTYPE声明**:DOCTYPE声明会...

    FireFox下文本域换行代码

    FireFox下文本域换行FireFox下文本域换行FireFox下文本域换行FireFox下文本域换行

    JavaScript在IE和Firefox(火狐)的不兼容问题解决

    这表明文章旨在探讨并提供解决方案来处理在不同浏览器环境下的JavaScript兼容性问题,尤其是在Internet Explorer(IE)和Mozilla Firefox(火狐)这两个浏览器上。下面将深入解析文件中的部分代码示例,以及给出的一...

    firefox与ie css+div兼容大全

    在标准模式下,Firefox和IE通常遵循W3C标准,但在Quirks Mode下,它们可能会模拟老版本的浏览器行为。因此,确保使用正确的DOCTYPE声明,如`&lt;!DOCTYPE html&gt;`,可以帮助浏览器进入标准模式。 2. **居中对齐**:Fire...

    多浏览器下IE6 IE7 firefox li 间距问题

    ### 解决多浏览器下IE6、IE7及Firefox中`&lt;li&gt;`元素间距兼容...通过以上方法,我们可以有效地解决多浏览器下尤其是IE5、IE5.5、IE6、IE7及Firefox中`&lt;li&gt;`元素间距兼容性问题,确保页面在各种浏览器中的一致性和美观性。

    js 复制到剪贴板 ,兼容支持火狐firefox 和 ie

    标题 "js 复制到剪贴板 ,兼容支持火狐firefox 和 ie" 涉及的是JavaScript编程中实现文本复制到系统剪贴板的功能,并且这个功能需要在Firefox和IE浏览器上都能正常工作。在Web开发中,允许用户将特定内容复制到剪贴板...

    兼容firefox火狐、IE6IE7IE8加入收藏,设为首页代码

    针对不同的浏览器,特别是老版本的浏览器如Firefox火狐和Internet Explorer (IE6、IE7、IE8),需要编写特定的代码来实现特定的功能,例如“加入收藏”和“设为首页”。下面将详细解释如何实现这些功能。 首先,我们...

    IE与Firefox的CSS兼容大全

    在网页设计中,CSS(层叠样式表)的兼容性是一个关键问题,特别是对于历史悠久的Internet Explorer(IE)和相对现代的Firefox浏览器。由于这两者对CSS标准的解析方式不同,开发者经常面临兼容性挑战。以下是一些针对...

    Mozzila Firefox与IE的兼容问题

    解决方法是在 frame 的使用方面,Firefox 和 IE 的最主要的区别是:如果在 frame 标签中书写了以下属性:那么IE可以通过 id 或者 name 访问这个 frame 对应的 window 对象,而Firefox 只可以通过 name 来访问这个 ...

    IE和firefox调试插件

    本文将详细介绍IE和Firefox浏览器的JavaScript、CSS、HTML调试插件,帮助你更好地理解和掌握这些工具。 首先,我们关注的是IE浏览器的调试插件。压缩包中的"IEDevToolBarSetup.msi"文件就是用于安装Internet ...

    针对firefox ie6 ie7 ie8的css样式hack

    在进行Web开发的过程中,我们经常会遇到浏览器兼容性问题,尤其是早期的Internet Explorer(IE)版本如IE6、IE7和IE8与现代浏览器如Firefox之间的差异。为了确保网站能够在不同浏览器下正常显示,开发者需要使用特定...

Global site tag (gtag.js) - Google Analytics