如何设置php echo表的样式

时间:2014-03-07 19:01:25

标签: php html css

我有以下代码,我想设计它。有没有办法做到这一点?

具体来说,我想将列标题和每个单元格中的文本居中。

echo "Variable Profile";
echo "<table>";
echo "<th>"."STATE"."</th>";
echo "<th>"."$column_name"."</th>";

foreach($lotsofasians as $lotsofasian){
echo "<tr>";

echo "<td>".$lotsofasian->state."</td>";
echo "<td>".$lotsofasian->$column_selected."</td>";

echo "</tr>";
}
echo "</table>";

我已尝试在标签中添加类似align ='center'的内容,但我无法使其正常工作。

4 个答案:

答案 0 :(得分:0)

尝试使用css而不是使用内联样式 CSS

table th,table td{
 text-align:center;
}

请参阅演示here

答案 1 :(得分:0)

关于样式化HTML,PHP输出它的事实并没有什么特别之处。你仍然可以给你的元素类,ID,内联样式或其他 - 只是如果涉及到PHP,你必须在echo输出语句中引用它们。

只需将echo语句更改为包含所需的类,例如

echo "<table class='some_class'>";

答案 2 :(得分:0)

你的php会输出这样的东西:

<table>
<th>state value</th>
<th>column value</th>
<tr>
<td>value</td>
<td>value</td>
</tr>
</table>

我也会为你的<tr>元素潜行<th>

<table>
<tr>
<th></th>
</tr>

然后,创建一些css规则:

table th, table td { padding: 5px; text-align: center; }

答案 3 :(得分:-1)

使用css-classes或内联样式。

为什么要引用变量?您的HTML无效。

最简单的方法:

echo 'Variable Profile';
printf('<table>
        <thead>
            <tr>
                <th>%s</th>
                <th>%s</th>
            </tr>
        </thead>
        <tbody>', 'State', $column_name);

        foreach($lotsofasians AS $index => $lotsofasian) {
            $style = array();

            /* Example 1: center text */
            $style[] = 'text-align: center;';

            /* Example 2: Set Background each second output */
            if($index % 2 == 0) {
                $style[] = 'background: #DDDDDD;';
            }

            printf('<tr style="%">
                        <td>%s</td>
                        <td>%s</td>
                    </tr>', implode('', $style), $lotsofasian->state, $lotsofasian->{$column_selected});
        }
echo '</tbody>
    </table>';