浏览器特定HTML可能?

时间:2013-11-15 12:24:28

标签: internet-explorer html browser

根据用户查看的浏览器,我是否可以显示不同的HTML代码部分?例如:

为IE7显示此div:

<div id="ie7styles"><p>This is my IE 7 text</p></div>

为每个其他浏览器显示此div:

<div id="mystyles"><p>This is every other browsers text</p><img src="#"></div>

我想要这样做的原因是因为我有一个简单的CSS视差效果,但由于IE7不支持inheritbackground-size,我想要一个默认图像才能显示如果从IE7查看,那么就没有差距。

2 个答案:

答案 0 :(得分:1)

您可以使用条件评论

<!--[if lte IE 7]>
    <div>What ever you need tho show here</div>
<![endif]-->

你的html无处不在

请参阅http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

用于更多不同的浏览器。 这不仅适用于样式表

另一种方式是用户javascript。但我更喜欢这个解决方案。

  

更新

我没有IE测试,但现在我认为你更新了问题,从我看到jQuery将有一个很好的解决方案来改变你想要的。它必须寻找你想要“改变”的元素。我举了一个例子,让你了解它是如何工作的

http://jsfiddle.net/3PcxV/2/

想想你是否每次使用这个解决方案ie7用户必须运行javascript。如果不是它想要工作!这就是为什么我更喜欢上述解决方案。另一种方式是她可以只在一个地方更改代码,只需将类添加到需要更改的元素中。

<div class="alwaysLikeThis">Lorem ipsum dolor sit amet.</div>
<div class="changeOnIe7">Show something else on IE7</div>
<div class="alwaysLikeThis changeOnIe7">Show something else on IE7</div>

<script type="text/javascript">
    $(document).ready(function(){
        if($.browser.msie && parseInt($.browser.version, 10) == 7) {
            alert("here");
           $( ".changeOnIe7" ).replaceWith( "<p class='newElement'>this is something else</p>" );
        }   
    });
</script>

答案 1 :(得分:0)