5

我有以下 HTML 和 PHP:

        <?php
            if ($_POST["submit"] == "Get Articles") {
                $api_url = "https://DonutJuice:so%20many%20people%20in%20my%20bed@api.pinboard.in/v1/posts/all?format=json";

                $ch = curl_init();

                curl_setopt($ch, CURLOPT_URL, $api_url);
                curl_setopt($ch, CURLOPT_HEADER, FALSE);
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

                $json = curl_exec($ch);

                curl_close($ch);

                $values = json_decode($json, true);

                echo "<div class='article-output'>";
                echo "<table>";
                echo "<tr><th>URL</th> <th>Title</th></tr>";

                foreach ($values as $bookmark) {
                    $bookmark_url = $bookmark["href"];
                    $bookmark_title = $bookmark["description"];
                    echo "<tr><td><a href='" . $bookmark_url . "'>" . $bookmark_url . "</a></td> <td>" . $bookmark_title . "</td></tr>";
                }

                echo "</table>";
                echo "</div>";
            }
        ?>

使用这个 CSS:

table {
    margin-top: 50px;
    padding: 5px 20px;

    background: rgba(255, 255, 255, 0.5);
    border: 1px solid #a9a8a7;
    border-radius: 5px;
}

tr {
    height: 50px;
}

th {
    color: #173769;
}

td {
    width: 60px;
    word-wrap: break-word;

    color: #444;
}

    td:first-child {
        padding-right: 30px;
    }

但每当我按下处理该 PHP 的按钮时,我都会得到如下信息:

在此处输入图像描述

他们仍在无情地破坏页面布局。

我该如何解决?

4

3 回答 3

4

word-break当行太长时,该属性可以强制进行换行

http://tinker.io/ca0ae

td {
    word-break: break-all;
    word-break: break-word;
}
于 2013-04-10T17:46:46.470 回答
1

你总是可以在PHP 端做到这一点:

echo "<tr><td><a href='" . $bookmark_url . "'>" . wordwrap($bookmark_url, 40, "\n") . "</a></td> <td>" . $bookmark_title . "</td></tr>";
于 2013-04-10T17:31:59.733 回答
0

td在 CSS 中编辑:

td {
    width: 60px;
    color: #444;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
于 2013-04-10T17:37:46.743 回答