浏览器兼容性问题——IE不支持却很实用的CSS属性Outline和Child

1. Outline(适用范围:鼠标悬浮hover加外边框)

我们在布局的时候,常常会因为添加边框border影响宽高的布局。

那么,outline是完美的替代品,因为它可以在不影响文档流的情况下呈现该对象。但是IE6 和IE7 不支持 outline 属性。所以,它不能在这两个浏览器中用于调试。

<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
ul {
width: 500px;
margin: 50px auto;
list-style: none;
}
li {
width: 100px;
height: 100px;
background: #ececec;
float: left;
margin-right: 10px;
}
li:hover {
background: pink;
/*border: 2px solid red; */ /*border可以兼容到任何浏览器*/
outline: 2px solid red; /*outline只有IE6和IE7不支持此属性*/
}
</style>
</head>
<body>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</body>

2. first-child(第一个元素)、last-child(最后一个元素)、nth-child(*) (第*个元素) (适用范围:块级元素中有相同的元素)

 

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        ul {
            width: 500px;
            margin: 50px auto;
            list-style: none;
        }
        li {
            width: 100px;
            height: 100px;
            float: left;
            margin-right: 10px;
        }
        li:first-child {
            background: pink;
        }
        li:last-child {
            background: green;
        }
        li:nth-child(2) {
            background: red;
        }
        li:nth-child(3) {
            background: yellow;
        }
    </style>
</head>
<body>
<ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>

  

posted @ 2018-12-15 17:03  机智的举哥  阅读(922)  评论(0编辑  收藏  举报