Fonction Mail - Mettre du CSS

Ce topic a été résolu
Blast0Kd

Blast0Kd Le 15 mai 2016 à 10:46 (Édité le 25 janvier 2019 à 17:51)

Salut à tous je voudrais savoir comment mettre du css dans ma fonction mail merci

Voici ce que j'ai essayé : 
<link href="http://www.skilldevice.fr/assets/css/styles.css" rel="stylesheet" type="text/css"> 
Mai ça marche pas
TheOldNoob

TheOldNoob Le 15 mai 2016 à 11:04 (Édité le 15 mai 2016 à 11:07)

Du coup comme tu a édité la totalité de ton message, je fait de même...

C'est exactement le probleme?

Parce qu'il suffit juste d'appelé une feuille de style. Que la tu va chercher sur www.skilldevice.fr.

Je pense que tu devrait essayé ça :

<link href="css/styles.css" rel="stylesheet" type="text/css"> 
Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:09

Voici le code complet :

 $result = false;
    $result_msg = "";
    
    $header="MIME-Version: 1.0\r\n";
    $header.='From:"Inscription"<support@skilldevice.fr>'."\n";
    $header.='Content-Type:text/html; charset="uft-8"'."\n";
    $header.='Content-Transfer-Encoding: 8bit';
    
    $message='
    <html>
    <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
      <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet" type="text/css">
      <link href="http://www.skilldevice.fr/assets/css/styles.css" rel="stylesheet" type="text/css"> 
      <meta charset="utf-8">
      
      </head>
      <body>
        
      <div class="container sections-wrapper">
        <div class="row">
            <div class="primary col-md-8 col-sm-12 col-xs-12">
                <section class="latest section">
                    <div class="section-inner">
                       
                        <div class="content">    
                               <div class="desc text-left">  
        
          <br />
           <h3 style="color: #778492;" align="left"><b>'.htmlspecialchars($_POST['pseudo']).'</b>,</h3><br />
            <p>Votre espace client a été créé avec succès. Retrouvez ci-dessous vos informations de connexions, ces informations sont confidentiels et ne doivent en aucun cas être divulgés à un tiers.</p>
              <table style="border-collapse: collapse; width: 100%;"> 
               <tr style="tr:nth-child(even){background-color: #f2f2f2}">
                   <th style="text-align: left;padding: 8px;">Paramètres</th>
                   <th style="text-align: left;padding: 8px;">Contenu</th>
               </tr>
           
               <tr style="tr:nth-child(even){background-color: #f2f2f2}">
                   <td style="text-align: left;padding: 8px;">Pseudo : </td>
                   <td style="text-align: left;padding: 8px;"><b>'.htmlspecialchars($_POST['pseudo']).'</b></td>
               <tr>
               <tr style="tr:nth-child(even){background-color: #f2f2f2}">
                   <td style="text-align: left;padding: 8px;">Mot de passe : </td>
                   <td style="text-align: left;padding: 8px;"><b>'.htmlspecialchars($_POST['mdp']).'</b></td>
               <tr>
               <tr style="tr:nth-child(even){background-color: #f2f2f2}">
                   <td style="text-align: left;padding: 8px;">Adresse mail : </td>
                   <td style="text-align: left;padding: 8px;"><b>'.htmlspecialchars($_POST['mail']).'</b></td>
               <tr>
          </table>  
          <p>(Ce message a été envoyé le '.date("d/m/Y").' à '.date("H:i").')</p>
          <br />                
                                </div>
                          </div>
                      </div>
                <section>
              </div>
        
      </body>
    </html>
    ';
    
    $result = mail($_POST["mail"], "Espace Client", $message, $header);
Et le résultat par mail :


Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:10

Et moi j'aimerais que dans mon mail il y ai le css que je me suis fait ch*** à fait x)
TheOldNoob

TheOldNoob Le 15 mai 2016 à 11:12

Parce que tu l'appel pas au bon endroit, regarde ma réponse au dessus 😀
Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:16

ça marche toujours pas :

$result = false;
    $result_msg = "";
    
    $header="MIME-Version: 1.0\r\n";
    $header.='From:"Inscription"<support@skilldevice.fr>'."\n";
    $header.='Content-Type:text/html; charset="uft-8"'."\n";
    $header.='Content-Transfer-Encoding: 8bit';
    
    $message='
    <html>
    <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
      <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet" type="text/css">
      <link href="../assets/css/styles.css" rel="stylesheet" type="text/css">  
      <meta charset="utf-8">
      
      </head>
      <body>
        
      <div class="container sections-wrapper">
        <div class="row">
            <div class="primary col-md-8 col-sm-12 col-xs-12">
                <section class="latest section">
                    <div class="section-inner">
                       
                        <div class="content">    
                               <div class="desc text-left">  
        
          <br />
           <h3 class="title"><b>'.htmlspecialchars($_POST['pseudo']).'</b>,</h3><br />
            <p>Votre espace client a été créé avec succès. Retrouvez ci-dessous vos informations de connexions, ces informations sont confidentiels et ne doivent en aucun cas être divulgés à un tiers.</p>
              <table> 
               <tr >
                   <th>Paramètres</th>
                   <th>Contenu</th>
               </tr>
           
               <tr >
                   <td>Pseudo : </td>
                   <td><b>'.htmlspecialchars($_POST['pseudo']).'</b></td>
               <tr>
               <tr >
                   <td>Mot de passe : </td>
                   <td><b>'.htmlspecialchars($_POST['mdp']).'</b></td>
               <tr>
               <tr >
                   <td>Adresse mail : </td>
                   <td><b>'.htmlspecialchars($_POST['mail']).'</b></td>
               <tr>
          </table>  
          <p>(Ce message a été envoyé le '.date("d/m/Y").' à '.date("H:i").')</p>
          <br />                
                                </div>
                          </div>
                      </div>
                <section>
              </div>
        
      </body>
    </html>
    ';
    
    $result = mail($_POST["mail"], "Espace Client", $message, $header);

Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:17

Voici le résultat :

Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:19

Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:19

C'est pire
TheOldNoob

TheOldNoob Le 15 mai 2016 à 11:22

Ok, j'ai lu ton probleme de travers. Donc tu veux un style dans ton mail.

Le gros probleme du style dans les mails, c'est que chaque webmail gère a sa façon le styles, seul les clients e-mails type Outlook, Thunderbird... gère assé correctement le html/css.

Du coup, je te conseil d'utilisé des tableau et surtout utilisé des style en ligne directement sur les élement concernés avec des attribut style=""
Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:25

C'est ce que j'ai fait, mais comment @PrimFX a fait sur son site, parce que c'est bien du css ? non ?
Blast0Kd

Blast0Kd Le 15 mai 2016 à 11:32

UP
Aendawan

Aendawan Le 15 mai 2016 à 19:54

On ne peut pas utiliser le HTML5 dans les emails. Il faut utiliser le HTML1, c'est à dire, à chaque div utilisé style="".
De plus, tous n'est pas pris en charge par les clients mail.
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte