根据用户查看的浏览器,我是否可以显示不同的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不支持inherit
和background-size
,我想要一个默认图像才能显示如果从IE7查看,那么就没有差距。
答案 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将有一个很好的解决方案来改变你想要的。它必须寻找你想要“改变”的元素。我举了一个例子,让你了解它是如何工作的
想想你是否每次使用这个解决方案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)