負margin的一些應用

最近聽大家在討論 負margin的一些應用,所以自己研究一下,下面做一些記錄


1. 實現左右兩列布局

    方法一:

        <div>
            <div style="float:left;width:200px;">左側</div>
            <div style="margin-left:200px;background:#999;">右側</div>
        </div>

    方法二:

<div>
            <div style="width:200px;height:200px;">左側</div>
            <div style="margin-left:200px;margin-top:-200px;">右側</div>
        </div>

    對比兩種方法,第一種用到float,弊端就是應用float在IE中可能引起很多bug,第二種的話用-margin,本事還是比較讚的,暫時沒發現沒事問題;


2.導航欄

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        *{
            margin: 0;
            border: 0;
            padding: 0;
        }
        ul{
            overflow: hidden;
        }
        ul li{
            background: #999;
            border-left: 1px solid #000;
            width:60px;
            height:30px;
            float: left;
            list-style: none;
            text-align: center;
            margin-left:-1px;
        }
    </style>
</head>
<body>
    <div style="margin-left:20px;">
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    </div>
</body>
</html>

或者:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        *{
            margin: 0;
            border: 0;
            padding: 0;
        }
        ul{
            
        }
        ul li{
            background: #999;
            border-left: 1px solid #000;
            border-right: 1px solid #000;
            width:60px;
            height:30px;
            float: left;
            list-style: none;
            text-align: center;
            margin-left:-1px;
        }
    </style>
</head>
<body>
    <div style="margin-left:20px;">
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    </div>
</body>
</html>

合理使用overflow以及-margin



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章