web-dev-qa-db-fra.com

Comment utiliser le style css en php

J'utilise php pour afficher les données de mysql. Voici mes déclarations 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>

Ils sont utilisés pour afficher table, tableheader, tabledate . Je suis nouveau dans PHP css, alors je me demandais simplement comment utiliser le style CSS ci-dessus dans l'affichage des codes php:

<?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>";
<?>
12
Li'

Les feuilles de style en cascade (CSS) sont un langage de feuille de style utilisé pour décrire la sémantique de présentation (apparence et mise en forme) d'un document écrit dans un langage de balisage. plus d'infos: http://en.wikipedia.org/wiki/Cascading_Style_Sheets CSS n'est pas un langage de programmation et ne dispose pas des outils fournis avec un langage côté serveur tel que PHP. Cependant, nous pouvons utiliser des langages côté serveur pour générer des feuilles de style.

<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>
11
RezaSh

Je suppose que vous avez votre code CSS dans une base de données et que vous voulez rendre un fichier php en tant que CSS Si c'est le cas...

Dans votre page html :

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

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

Ensuite, dans style.php fichier:

<?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;
}

S'amuser!

16
Omar

Il suffit de mettre le CSS en dehors de la balise PHP. Ici:

<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>

Notez que les balises PHP sont <?php et ?>.

4
rationalboss

Je n'avais pas compris ce Im new to php css, mais comme vous avez défini votre CSS au niveau des éléments, vos styles sont déjà appliqués à votre code PHP.

Votre code PHP doit être utilisé avec HTML comme ceci

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

Rappelez-vous également que vous n'avez pas besoin d'utiliser l'écho HTML en php, séparez-les simplement comme ceci

<table>
  <tr>
    <td><?php echo 'Blah'; ?></td>
  </tr>
</table>
1
Mr. Alien

Essayez de mettre votre php dans un document html:

Remarque: votre fichier n'est pas enregistré sous index.html mais il est enregistré sous index.php ou votre php ne fonctionnera pas!

 //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)

1
user3001093

css :hover c'est un peu comme js onmouseover

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

pas trop sûr de savoir comment ça marche mais css applique des styles aux identifiants

0
planetsarecool

Le moyen le plus simple et absolu (avec votre code actuel) est d’ajouter une instruction require_once("path/to/file") à votre code php. 

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

De plus, mis à part: la balise <?php d'ouverture n'a pas de > à la fin et la balise php ?> de clôture ne commence pas par <. Bizarre, mais vrai.

0
elbrant

Je ne sais pas si c'est le bon format ou pas. mais cela peut résoudre mon problème avec la suppression de type = "text/css" lors de l'insertion de code CSS dans un fichier html/tpl avec php.

<style type="text/css"></style>

devenir

<style></style>

Exemple  enter image description here

0
Panji