图标未正确显示(CSS)

问题描述 投票:0回答:2

我一直在尝试将垃圾箱显示在右侧,但是它们放置的位置似乎不太好,我是CSS新手,浏览互联网时没有运气(或者我没有没道理)。垃圾桶似乎与背景不成比例,因此,如果要填充标签,它将从盒子中溢出。

#container {
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    width: 360px;
    background-color: #f7f7f7;
    margin: 100px auto;
}

.completed {
    color: gray;
    text-decoration: line-through;
}

body {
    font-family: Roboto;
    background: #FFAFBD;
    background: -webkit-linear-gradient(to right, #ffc3a0, #FFAFBD);  
    background: linear-gradient(to right, #ffc3a0, #FFAFBD); 

}

li {
    background-color: white;
    height: 40px;
    line-height: 40px;
    color: #666;
}

input {
    font-size: 18px;
    background-color: #f7f7f7;
    width: 100%;
    padding: 13px 13px 13px 20px ;
    box-sizing: border-box;
    color: #2980b9;
}

input:focus{
    background-color: white;
    border: 3px solid #2980b9;
    outline: none;
}

li:nth-child(2n){
    background-color: #f7f7f7;
}

span {
    height: 35px;
    width: 40px;
    display: inline-block;
    margin-right: 20px;
    margin: 0 auto;
    text-align: center;
    color: white;
    background-color: #e74c3c;
}

h1 {
    background-color: #2980b9;
    color: white;
    margin: 0;
    padding: 10px 20px;
    text-transform: uppercase;
    font-size: 24px;
    font-weight: normal;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#plus {
    width: 20px;
    height: 20px;
    float: right;
    margin-top: 3px;
}

.remove {
    height: 20px;
    width: 15px;
}
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="assets/CSS/todo.css">
    <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="">
    <title>Trello</title>
</head>
<body>

    <div id="container">
        <h1>To-do List <img id="plus" src="assets/Plus.png" alt=""></h1>
        <input type="text" placeholder="Add New Todo...">

        <ul>
            <li><span><img class="remove" src="assets/Bin.png" alt=""></span> Go to potions class</li>
            <li><span><img class="remove" src="assets/Bin.png" alt=""></span> Buy New Robes</li>
            <li><span><img class="remove" src="assets/Bin.png" alt=""></span> Visit Hagrid</li>
        </ul>
    </div>


<script src="assets/JS/lib/Jquery.js"></script>
<script src="assets/JS/Custom/todos.js"></script>
</body>
</html>

感谢您的帮助。enter image description here

javascript html css
2个回答
0
投票

使用Flexbox!给您的<li><span>一个display: flex;,这样您就可以控制其子项的位置(在这种情况下为<img>)。

li {
    display: flex;
}
span {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 2px 0 0;
}

这里是Flexbox的不错指南。


0
投票

如何使元素跨度与li高度相同,以使红色bg完全填满?

span { height: 40px; }

就这样吗?

© www.soinside.com 2019 - 2024. All rights reserved.