html - 我不能让 div float 在右侧

标签 html css

我需要把 pockeat 元素放在侧边栏的右边,我尝试了很多在 Internet 上找到的解决方案,但都没有用。

这是我的代码:

.header {
    background-color:#ffffff;
    top:0;
    height:10%;
    width:100%;
    color:#1c1919;
    font-family:century gothic;
    font-size:56px;
    padding:15px;
    text-decoration:none;
    float:center;
    text-align:center;
    top:2%;
}

.navbar {
    position:relative;
    display:inline-block;
    text-align:center;
    overflow:hidden;
    background-color:#ffffff;
    height:8%;
    width: 100%;
    border-top:4px solid #1c1919;
    border-bottom:4px solid #1c1919;
    padding:5px; 
}

.navbar a {
    text-align:center;
    text-decoration:none;
    color:#1c1919;
    font-family:century gothic;
    font-size:32px;
    padding:0 30px;
}

.sidebar {
    background-color:#ffffff;
    text-decoration:none;
    font-family:century gothic;
    height:82%;
    width:20%;
    border-right:2px solid #1c1919;
}    

button.accordion {
    background-color: #f2f2f2;
    color: #1c1919;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.4s;
}

button.accordion.active, button.accordion:hover {
    opacity:0.7;
}

button.accordion:after {
    content: '\002B';
    color: #1c1919;
    font-weight: bold;
    float: right;
    margin-left: 5px;
}

button.accordion.active:after {
    content: "\2212";
}

div.panel {
    padding: 0 18px;
    background-color:#ffffff;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;

}

.panel li a {
    text-decoration:none;
    font-family:century gothic;
    font-size:15px;
    text-align:left;
    color: #1c1919;
    padding:10px;
    display:block;
}

.content-body {
    background-color:#ffffff;
    height:82%;
    width:80%;
    text-decoration:none;
    padding:10px;
    float:right;
}

.content {
    height:60px;
    width:50px;
    background-color:#ffffff;
    text-decoration:none;
    font-family:century gothic;
    padding:10px;
    font-size:20px;
    display:block;
}
<!navbar>
<div class="navbar">
    <a href="#Newest">HOME</a>
    <a href="#Newest">NEWEST</a>
    <a href="#Recommended">RECOMMENDED</a>
    <a href="#ATF">ALL TIME FAVE</a>
    <a href="#Newest">CONTACT US</a>
</div>

<!sidebar>  
<div class="sidebar">
    <button class="accordion">Gadgets</button>
        <div class="panel">
            <ul>
                <li><a href="#">Camera</a></li>
                <li><a href="#">Watch</a></li>
                <li><a href="#">Music</a></li>
                <li><a href="#">Phone</a></li>
                <li><a href="#">Bracelet</a></li>
            </ul>
        </div>
    <button class="accordion">Furniture</button>
        <div class="panel">
            <ul>
                <li><a href="#">Wheelchair</a></li>
                <li><a href="#">Lights</a></li>
                <li><a href="#">Table/ Chair</a></li>
                <li><a href="#">Storage</a></li>
            </ul>
        </div>
    <button class="accordion">Lifestyle</button>
        <div class="panel">
            <ul>
                <li><a href="#">Window Blinds</a></li>
                <li><a href="#">Ornaments</a></li>
                <li><a href="#">Mask</a></li>
                <li><a href="#">Socks</a></li>
                <li><a href="#">Gardening</a></li>
            </ul>
        </div>
    <button class="accordion">Instruments</button>
        <div class="panel">
            <ul>
                <li><a href="#">Guitar</a></li>
                <li><a href="#">Flute</a></li>
                <li><a href="#">Tuner</a></li>
            </ul>
        </div>
    <button class="accordion">Kitchen/Bathroom</button>
        <div class="panel">
            <ul>
                <li><a href="#">Ready-to-Eat</a></li>
                <li><a href="#">Bag</a></li>
                <li><a href="#">Pot</a></li>
                <li><a href="#">Kit</a></li>
            </ul>
        </div>
    <button class="accordion">Pet</button>
        <div class="panel">
            <ul>
                <li><a href="#">Cat</a></li>
                <li><a href="#">Dog</a></li>
            </ul>
        </div>
    <button class="accordion">Stationery</button>
        <div class="panel">
            <ul>
                <li><a href="#">Pen Pouch</a></li>
                <li><a href="#">Clock</a></li>
            </ul>
        </div>
    <button class="accordion">Toy</button>
        <div class="panel">
            <ul>
                <li><a href="#">Block</a></li>
                <li><a href="#">Doll</a></li>
                <li><a href="#">Card</a></li>
            </ul>
        </div>
    <button class="accordion">Other</button>
        <div class="panel">
            <ul>
                <li><a href="#">Pill Case</a></li>
                <li><a href="#">Fitness</a></li>
                <li><a href="#">Bicycle</a></li>
                <li><a href="#">Wine</a></li>
            </ul>
        </div>
</div>
<!content>
<div class="content-body">
    <div class="content">
        <img src="/image/bento/20170521223952w6A7Gz9kL8KlUW1g.jpg-w600.jpg" style="height:80%; width:100%">
        <br>Pockeat
    </div>
</div>

我哪里做错了?

最佳答案

您的 2% 边框占用了您的边栏宽度,使其总宽度达到 22%,因此您的边栏需要 18% 且边框宽度为 2%,请参阅更新后的 CSS。

我还删除了您所有的高度属性,它们不再需要了。 div 中的内容会自然适应。我所做的另一项修改是通过将其添加到 CSS 中的“正文”选择器中,使您正在使用的字体成为全局字体。

body {
  font-family:century gothic;
}
.header {
    background-color:#ffffff;
    width:100%;
    color:#1c1919;
    font-size:56px;
    padding:15px;
    text-decoration:none;
    float:center;
    text-align:center;
    top:2%;
}

.navbar {
    position:relative;
    display:inline-block;
    text-align:center;
    overflow:hidden;
    background-color:#ffffff;
    width: 100%;
    border-top:4px solid #1c1919;
    border-bottom:4px solid #1c1919;
    padding:5px; 
}

.navbar a {
    text-align:center;
    text-decoration:none;
    color:#1c1919;
    font-size:32px;
    padding:0 30px;
}

.sidebar {
    background-color:#ffffff;
    text-decoration:none;
    width:18%;
    border-right:2px solid #1c1919;
    float:left;
}    

button.accordion {
    background-color: #f2f2f2;
    color: #1c1919;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.4s;
}

button.accordion.active, button.accordion:hover {
    opacity:0.7;
}

button.accordion:after {
    content: '\002B';
    color: #1c1919;
    font-weight: bold;
    float: right;
    margin-left: 5px;
}

button.accordion.active:after {
    content: "\2212";
}

div.panel {
    padding: 0 18px;
    background-color:#ffffff;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}

.panel li a {
    text-decoration:none;
    font-size:15px;
    text-align:left;
    color: #1c1919;
    padding:10px;
    display:block;
}

.content-body {
    background-color:#ffffff;
    width:80%;
    text-decoration:none;
    padding:10px;
    float:right;
}
.content {
    background-color:#ffffff;
    text-decoration:none;
    font-size:20px;
    display:block;
}

关于html - 我不能让 div float 在右侧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44155818/

相关文章:

java - 无法从表单读取字符串

asp.net - 如何在 ASP.NET 应用程序中使用 CSS

html - 调整窗口大小时保持圆的纵横比

javascript - 添加类(class)时没有显示 li 文本

html - 删除水平列出的图像中图像下方/上方的空白

css - VS Code : How to enable . ASP.NET .cshtml 文件的 CSS 智能感知?

html - Foundation 5 中的图像布局因未响应式调整大小而中断

javascript - 使用 Javascript 的 HTML 中的下拉问题

javascript - 在 html/javascript/css 中隐藏复选框边框

javascript - 使用 CSS/Js 的文本动画无法正常工作