div元素下的圖片不能置頂解決辦法


正常我們寫一個左右兩列,左側一列放置圖片的html,如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .container{
            background-color: #fff;
            box-sizing: border-box;
            width: 100vw;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -webkit-flex-flow: row nowrap;
            flex-flow: row nowrap;
            height: 100vh;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            justify-content: center;
        }
        .left{
            width:50vw;
            height: 100vh;
            overflow: hidden;
            position: relative;
        }
        .imageBox{
            width: 100%;
            height: auto;
            position: absolute;
            top: 0;
        }
        img{
            width:100%;
            height:auto;
            display: block;
        }
    </style>
</head>
<body>
<div class="container">
    <div class="left">
        <div class="imageBox">
            <img src="http://img5.imgtn.bdimg.com/it/u=3025209343,1849399022&fm=26&gp=0.jpg" alt="">
            <img src="http://img5.imgtn.bdimg.com/it/u=3025209343,1849399022&fm=26&gp=0.jpg" alt="">
            <img src="http://img5.imgtn.bdimg.com/it/u=3025209343,1849399022&fm=26&gp=0.jpg" alt="">
        </div>
    </div>
</div>
</body>
</html>

正常寫個demo是可以打開且正常顯示的,但是在某些時候(可能是在配置了打包編譯等情況),發現圖片無論如何好像都在最底下我們看不到的位置展示,不能置頂,終於找到了原因。

解決辦法:

給imageBox 設置一個font-size:0px; 或者 設置 line-height:0;

產生問題的原因:

不設置font-size,會繼承父元素的font-size,我這里繼承了我設置的html的font-size:200vw,則會產生這個問題;

由於html有默認行高,或者設置了默認字體大小。

注意:

這里還有個img 5px縫隙的問題

解決辦法有三:

1、圖片父元素設置font-size:0;

2、圖片設置 display:block;

3、圖片設置 vertical-align:bottom;

4、圖片設置 margin-bottom:-5px;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM