【问题标题】:Extra Space Between DIVsDIV 之间的额外空间
【发布时间】:2012-08-28 03:44:47
【问题描述】:

我正在使用 Wordpress 制作一个包含两个主要组件的登录页面:

  1. 垂直和水平居中的 DIV(用 Jquery 实现)
  2. 具有翻转效果的一系列按钮(使用 JqueryUI 实现)

虽然这两个组件似乎都运行良好,但按钮之间有一个额外的空间,我似乎在 HTML 编辑器中找不到,可以看到 here。 “主站点”、“移动”和“捐赠”按钮之间的间距明显大于标题和第一个按钮之间的间距。

在 Chrome 中使用检查元素,每个按钮的 </div> 标记后面的行包含一个 " " ,我认为这可能是造成额外空间的原因,但我在 Wordpress HTML 编辑器中找不到它。我还下载了一个 WP disable wpautop-type 插件,但它并没有删除空间。

最后,当我将 HTML 和关联的 CSS 粘贴到 JSfiddle 时,多余的空间消失了。我假设问题出在 Wordpress 的自动格式设置上。但是,我无法弄清楚添加空间的功能是什么或如何删除它。任何帮助是极大的赞赏!

【问题讨论】:

  • 可能想从清理错误开始 (validator.w3.org/…)
  • 嗯,我不知道。这段代码有点奇怪,您使用表格作为结构,并使用<code> 标签来显示它。另外,您说您正在使用 Wordpress 的 HTML 编辑器,这意味着您创建了这个页面,并在 HTML 编辑器中将脚本附加到它,对吗?我会提供一个不同的解决方案。此外,我没有看到任何 <p> 标签包装了您的编辑器创建的代码,因此我假设您正在使用某种 nowrap 方法,我也可以看到这个吗?
  • 里面多了个双引号

标签: jquery wordpress jquery-ui html space


【解决方案1】:

我最终为有问题的按钮添加了一个负的底部边距,它删除/减少了 DIV 之间的空间,使其正好符合我的需要。话虽这么说,如果添加负底部边距是不好的做法,请随时跳到这篇文章中并阻止我!

ShaunOReilly,非常感谢您的帮助和 jsfiddle - 我一定会记住的。

马卡

【讨论】:

    【解决方案2】:

    按钮之间有一些额外的双引号:

    <div id="landing" style="margin-top: -100px; top: 50%; position: absolute; margin-left: -200px; left: 50%; "><div style="font-family: 'serif6_beta_rregular'; font-size: 26pt; color: #ffffff; text-align: center;">Adrienne Adams</div>
        ""
        <div class="sample" onclick="top.location.href='http://www.google.com'" style="background-color: rgb(35, 31, 32); color: rgb(255, 255, 255); ">Main Site</div>
        ""
        ​<div class="sample" onclick="top.location.href='http://www.google.com'" style="background-color: rgb(35, 31, 32); color: rgb(255, 255, 255); ">Mobile</div>​
        ""
        <div class="sample" onclick="top.location.href='http://www.google.com'" style="background-color: rgb(35, 31, 32); color: rgb(255, 255, 255); ">Donate</div>​
    </div>
    

    可能是换行符之类的。

    这个看起来不一样:http://jsfiddle.net/webwarrior/tHwmH/3/

    当我添加相同的双引号时,我得到相同的效果:http://jsfiddle.net/webwarrior/tHwmH/4/

    如果您不想花几天时间来弄清楚模板为什么会这样做,那么将以下 jQuery 添加到 DocumentReady 函数:

    jQuery("#landing").parent().append("<div class='temp'><div>");
    jQuery(".temp").append(jQuery("#landing div"));
    jQuery("#landing").empty();
    jQuery("#landing").append(jQuery(".temp div"));
    jQuery(".temp").remove();
    

    如下所示:http://jsfiddle.net/webwarrior/tHwmH/18/

    【讨论】:

    • ShaunOReilly,我也注意到了这些引号——奇怪的是它们在 wordpress HTML 编辑器中不存在——它们只是在我更新页面并在 Chrome 中检查后才出现。我想知道 WP 或我正在使用的基本主题 (Atahualpa) 是否可以以某种方式创建它们?
    • 我会更深入地研究它。有没有主题/模板的来源?
    • 也许现在就用 jQuery 把它撕掉,直到你弄清楚它在做什么......
    • 我已经看到这是可行的,但我不确定如何,确切地说......你知道可以去除引号的好的 JSfiddle 或脚本吗?
    • 看我回答的最后5行!例如:jsfiddle.net/webwarrior/tHwmH/18
    猜你喜欢
    • 2013-05-06
    • 2012-12-23
    • 2013-12-18
    • 2021-11-01
    • 2014-02-04
    • 2020-10-16
    • 2017-07-13
    • 2013-04-29
    • 1970-01-01
    相关资源
    最近更新 更多