虽然显示:没有,div内的div仍占用空间?

tor*_*inx 4 html javascript css

<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$("select#choosebook").change(function(){
    $(".title").slideDown("medium");
});
</head>

<body>
<div class="booktitle">
    <p>
    <font color="red">*</font>Book:
    <select id="choosebook">
        <option>Choose a Book...</option>
        <option>Add new Book...</option>
    </select>
    <div class="title" style="display:none">**
        <font color="red">*</font>Title: <input type="text">
    </div>
    <font color="red">*</font>Page: <input type="text" class="page">
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

具有类"title"的div仍占用"Book:"输入和"Page:"输入之间的空格,即使它是隐藏的!此网页上的其他div不会.在激活javascript以将其滑下之前,如何才能占用空间?

谢谢!

编辑:根据要求,这是问题的屏幕截图.我试图摆脱Book输入和Title输入之间的差距.在"标题"输入向下滑动之前: 在'标题'输入向下滑动后:

这是我的CSS:

<style type="text/css">
    @import url("layout.css");
    .page {
        width: 50px;
    }
    .URL, .booktitle {
        margin-left: 24px;
        display:none;
    }
    .title {
        display: none;
    }
    .newtag {
        display:none;
    }
    .amount, .addtag {
        width: 100px;
    }
    .details {
        width: 275px;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

JJJ*_*JJJ 7

这不是创造空间的div,而是<br>你拥有的空间.

请,摆脱<font>标签.我的眼睛在流血.


sar*_*tyx 1

如果您谈论的是 Book 下拉菜单下的巨大空间,那么这是因为p您在 HTML 中打开了标签但忘记关闭它。该p标签正在添加默认边距。因此就有了空间。去掉p标签,边距就会消失。

另外,正如我在对您的问题的评论中提到的,始终添加一个doctype到您的页面。