php - IE 和空白

标签 php css internet-explorer

我让 PHP 从一个数组创建一个内联无序列表。对于这些列表项中的每一个,我都需要指定“white-space: nowrap”,因为我在文本旁边有复选框,它们不应该分开。但是,列表应该正常换行,因为它不应该在列表项之外应用。

<ul>
    <?php
    foreach ($nonfiction as $nonficid => $nonficgenre) {
        echo "<li><input type=\"checkbox\" name=\"genre[]\" value=\"$nonficgenre\"";
        if (in_array($nonficgenre, $selectedgenres)) {
            echo " checked=\"checked\"";
        }
        echo " /><span class=\"genrelabel\">$nonficgenre</span></li> ";
    }
    ?>
</ul>

在我的 CSS 中(注意:整个列表在类“listdivs”的一个 div 中):

.listdivs li {
    display: inline;
    white-space: nowrap;
}

这在 Chrome 和 Firefox 中运行良好,它在适当的中断处环绕列表。但是 IE 会忽略合法的空格并将整个列表打印在一行中。我该如何补偿?

最佳答案

尝试在内容周围添加 span。

.listdivs li {
    display: inline;
    white-space: nowrap;
}
.listdivs li span {
    white-space: nowrap;
}

<ul>
    <?php
    foreach ($nonfiction as $nonficid => $nonficgenre) {
        echo "<li><span><input type=\"checkbox\" name=\"genre[]\" value=\"$nonficgenre\"";
        if (in_array($nonficgenre, $selectedgenres)) {
            echo " checked=\"checked\"";
        }
        echo " /><span class=\"genrelabel\">$nonficgenre</span></span></li> ";
    }
    ?>
</ul>

这个技巧在一些 ui 中使用很多,比如 jqueryui、yahooui、extjs

关于php - IE 和空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976104/

相关文章:

html - 如何跨浏览器垂直对齐元素?

php - 通过 JQuery 选择具有随机 ID 的元素

php - 我可以对不同的操作使用相同的 View 吗?

php - 如何检测程序的第一次运行?

css - 有谁知道 Pinterest.com 的布局是如何工作的?

javascript - 使用 JavaScript 在客户端将 base64 字符串保存为 PDF

php - sqlite中的PDO::beginTransaction()和外键冲突

不在 View 中时的 jQuery 粘性页脚

jquery - Jeditable css 悬停问题

internet-explorer - Pixelperfect Upscaled Sprite 背景图像在 IE 中仍显示为平滑/双三次图像?