IE8条件样式表影响所有IE

时间:2015-02-04 14:50:34

标签: html css internet-explorer internet-explorer-8

我的一些CSS元素在IE8中不起作用。所以我使用条件样式表为它们设置display:none;但是,这会影响使用IE浏览器的所有人,无论版本如何。我使用以下代码:

<!DOCTYPE html>
<html>
    <head>
        <title>website title</title>
        <meta name="description" content="web description">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">

        <!-- Stylesheets -->

        <link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.css">
        <script src="bootstrap/js/bootstrap.js"></script>
        <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
        <link rel="stylesheet" type="text/css" href="css/style.css">

<!--[if lte IE 8]><link rel="stylesheet" href="css/ie8.css"><![endif]-->

    <!--[if lt IE 9]>
      <script src="bootstrap/js/html5shiv.js"></script>
      <script src="bootstrap/js/respond.min.js"></script>
      <![endif]-->
    </head>

我哪里错了?

2 个答案:

答案 0 :(得分:0)

[if lte IE 8]表示如果IE的版本小于8 ,则会添加样式表。您需要[if IE 8]条件。

答案 1 :(得分:0)

我的理解是你想要定位所有旧的IE,包括IE8,所以lte IE 8(更低/相等)可以工作。您也可以将lt IE 9实际合并到上面的那个中,如下所示:

<!--[if lte IE 8]>
    <script src="bootstrap/js/html5shiv.js"></script>
    <script src="bootstrap/js/respond.min.js"></script>
    <link rel="stylesheet" href="css/ie8.css">
<![endif]-->

要进行调试,您可以尝试在body {10px solid red !important;}中添加ie8.css之类的内容,并查看是否适用于正确的浏览器。