【问题标题】:How to use css style in php如何在 php 中使用 css 样式
【发布时间】:2012-11-02 19:00:49
【问题描述】:

我正在使用 php 来显示来自 mysql 的数据。这是我的 CSS 语句:

<style type=”text/css”>
table {
    margin: 8px;
}

th {
    font-family: Arial, Helvetica, sans-serif;
    font-size: .7em;
    background: #666;
    color: #FFF;
    padding: 2px 6px;
    border-collapse: separate;
    border: 1px solid #000;
}

td {
    font-family: Arial, Helvetica, sans-serif;
    font-size: .7em;
    border: 1px solid #DDD;
}
</style>

它们用于显示表格、表格标题、表格日期。 我是 php css 新手,所以我只是想知道如何在 php 显示代码中使用上述 css 样式:

<?php>
echo "<table>";
echo "<tr><th>ID</th><th>hashtag</th></tr>";
while($row = mysql_fetch_row($result))
{
    echo "<tr onmouseover=\"hilite(this)\" onmouseout=\"lowlite(this)\"><td>$row[0]</td>                <td>$row[1]</td></tr>\n";
}
echo "</table>";
<?>

【问题讨论】:

  • 我不完全理解你的问题。您在 PHP 中使用它们的方式与在普通 HTML 中的使用方式不同:要么包含外部样式表,要么将样式表嵌入到您的 &lt;head&gt; 元素中

标签: php css echo


【解决方案1】:

我猜你的 css 代码在数据库中,并且你想将 php 文件呈现为 CSS。如果是这样的话……

在您的 html 页面

<html>
<head>
   <!- head elements (Meta, title, etc) -->

   <!-- Link your php/css file -->
   <link rel="stylesheet" href="style.php" media="screen">
<head>

然后,在 style.php 文件中:

<?php
/*** set the content type header ***/
/*** Without this header, it wont work ***/
header("Content-type: text/css");


$font_family = 'Arial, Helvetica, sans-serif';
$font_size = '0.7em';
$border = '1px solid';
?>

table {
margin: 8px;
}

th {
font-family: <?=$font_family?>;
font-size: <?=$font_size?>;
background: #666;
color: #FFF;
padding: 2px 6px;
border-collapse: separate;
border: <?=$border?> #000;
}

td {
font-family: <?=$font_family?>;
font-size: <?=$font_size?>;
border: <?=$border?> #DDD;
}

玩得开心!

【讨论】:

    【解决方案2】:

    层叠样式表 (CSS) 是一种样式表语言,用于描述以标记语言编写的文档的表示语义(外观和格式)。 更多信息:http://en.wikipedia.org/wiki/Cascading_Style_Sheets CSS 不是一种编程语言,也没有像 PHP 这样的服务器端语言附带的工具。但是,我们可以使用服务器端语言来生成样式表。

    <html>
    <head>
    <title>...</title>
    <style type="text/css">
    table {
    margin: 8px;
    }
    
    th {
    font-family: Arial, Helvetica, sans-serif;
    font-size: .7em;
    background: #666;
    color: #FFF;
    padding: 2px 6px;
    border-collapse: separate;
    border: 1px solid #000;
    }
    
    td {
    font-family: Arial, Helvetica, sans-serif;
    font-size: .7em;
    border: 1px solid #DDD;
    }
    </style>
    </head>
    <body>
    <?php>
    echo "<table>";
    echo "<tr><th>ID</th><th>hashtag</th></tr>";
    while($row = mysql_fetch_row($result))
    {
    echo "<tr onmouseover=\"hilite(this)\" onmouseout=\"lowlite(this)\"><td>$row[0]</td>                <td>$row[1]</td></tr>\n";
    }
    echo "</table>";
    ?>
    </body>
    </html>
    

    【讨论】:

      【解决方案3】:

      只需将 CSS 放在 PHP 标记之外。这里:

      <html>
      <head>
          <title>Title</title>
          <style type="text/css">
          table {
              margin: 8px;
          }
          </style>
      </head>
      <body>
          <table>
          <tr><th>ID</th><th>hashtag</th></tr>
          <?php
          while($row = mysql_fetch_row($result))
          {
              echo "<tr onmouseover=\"hilite(this)\" onmouseout=\"lowlite(this)\"><td>$row[0]</td>                <td>$row[1]</td></tr>\n";
          }
          ?>
          </table>
      </body>
      </html>
      

      请注意,PHP 标签是&lt;?php?&gt;

      【讨论】:

      • 另外,像“”这样的纯 HTML 标签不需要被回显——只需在 HTML 中输出它们并在您真正需要 PHP 时启动
      【解决方案4】:

      尝试将您的 php 放入 html 文档中:

      注意:您的文件没有保存为 index.html,而是保存为 index.php 否则您的 php 将无法工作!

       //dont inline your style
      
       <link rel="stylesheet" type="text/css" href="mystyle.css"> //<--this is the proper way!
      
       //save a separate style sheet (i.e. cascading style sheet aka: css)
      

      【讨论】:

        【解决方案5】:

        我不理解这个Im new to php css,但是当您在元素级别定义 CSS 时,您的样式已经应用于您的 PHP 代码

        您的 PHP 代码将与这样的 HTML 一起使用

        <!DOCTYPE html>
        <html>
          <head>
            <style>
            /* Styles Go Here */
            </style>
          </head>
          <body>
          <?php
           echo 'Whatever'; 
          ?>
          </body>
        </html>
        

        另外请记住,您不需要使用 php 回显 HTML,只需像这样将它们分开即可

        <table>
          <tr>
            <td><?php echo 'Blah'; ?></td>
          </tr>
        </table>
        

        【讨论】:

          【解决方案6】:

          您也可以将其嵌入到 php.ini 中。例如

          <?php
              echo "<p style='color:blue; border:2px red solid;'>CSS Styling in php</p>";
          ?>
          

          希望这对未来的任何人都有帮助。

          【讨论】:

          • 这并不能解决问题,因为它只将样式应用于特定的一个元素。 OP注意到他们有一个复杂的css
          【解决方案7】:

          我不知道这是否正确。但它可以解决我在使用 php 在 html/tpl 文件中插入 css 代码时删除 type="text/css" 的问题。

          &lt;style type="text/css"&gt;&lt;/style&gt;

          成为

          &lt;style&gt;&lt;/style&gt;

          示例

          【讨论】:

          【解决方案8】:

          css :hover 有点像 js onmouseover

          row1 {
              // your css
          }
          row1:hover {
              color: red;
          }
          row1:hover #a, .b, .c:nth-child[3] {
              border: 1px solid red;
          }
          

          不太清楚它是如何工作的,但 css 将样式应用于回显的 ids

          【讨论】:

          • 这没有回答问题。问题是关于如何将 css 合并到 php 文件中,而不是关于 :hover 的使用。如果您对 OP 有意见,请发表评论
          【解决方案9】:

          绝对最简单的方法(使用您当前的代码)是在您的 php 代码中添加 require_once("path/to/file") 语句。

          <?php
          require_once("../myCSSfile.css");
          echo "<table>";
          ...
          

          另外,顺便说一句:开头的&lt;?php 标签末尾没有&gt;,而关闭的?&gt; php 标签不是以&lt; 开头。很奇怪,但确实如此。

          【讨论】:

            【解决方案10】:

            我刚才遇到了这个问题,我尝试了 require_once 技巧,但它只会在我的所有 php 代码上方回显 CSS,而没有实际应用样式。

            不过,我修复它的方法是将我所有的 php 包装在它们自己的纯 HTML 模板中。只需在文档的第一行输入 html 并选择建议 html:5 即可获取 HTML 样板,就像您刚开始编写纯 HTML 文档时一样。然后剪切结束 body 和 html 标签并将它们一直粘贴到底部,在结束 php 标签下方以包装您的 php 代码,而无需实际更改任何内容。最后,您可以将指向样式表的普通旧链接放入 HTML 的头部。效果很好。

            【讨论】:

              猜你喜欢
              • 2013-09-12
              • 2018-05-08
              • 2016-06-18
              • 1970-01-01
              • 2018-09-06
              • 1970-01-01
              • 2013-11-28
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多