PHP中表单内的特定字体系列

时间:2018-05-25 21:03:08

标签: php css forms fonts font-family

我正在使用我在HTML中创建的表单在PHP中创建一个查询表单。是否可以像在HTML中一样在PHP代码中使用特定字体?例如:

    <link href="https://fonts.googleapis.com/css?family=Quicksand" rel="stylesheet">

font-family: 'Quicksand', sans-serif;

下面你可以看到我所指的PHP代码:

$email_to = "billy.farroll@hotmail.com";
$name = $_POST["name"];
$email = $_POST["email"];
$tel = $_POST["tel"];
$msg = $_POST["msg"];

$email_from = "billy@slickfin.com"; // This email address has to be the same email on the server if using Fasthots server i.e. SlickFin server - billy@SlickFin.com you can't put the $email variable entered by user because its not authorised to send it.
$message = $_POST["message"];
$email_subject = "Enquiry";

例如,本节(下方)我想在填写并提交表单时使用font-family: 'Quicksand', sans-serif;作为我收到的电子邮件。这是我的问题。

$headers =   
"From: $email .\n";   
"Reply-To: $email .\n"; // 
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";  
$message = '<html><body>';
$message .= "<h1 style='color: #0d1237;'>Enquiry</h1>";
$message .= "<h2 style='color: #0d1237; font-size: 22px;'> Name: " . $name . "</h1>";
$message .= "<p style='font-weight: bold;'> Email Address: " . $email . "</p>";
$message .= "<p style='font-weight: bold;'> Telephone Number: " . $tel . "</p>"; 
$message .= "<p style='font-weight: bold;'> Message: " . $msg ."</p>";
$message .= "</body></html>";

此外,这是我的HTML表单代码:

<section id="contact">
    <form action="enquiry.php" method="post">
          <div class="field name-box">
                <input type="text" name="name" id="name" placeholder="Who Are You?" tabindex="1" required>
                <label for="name">Name</label>
                <span>Done</span>
          </div>

          <div class="field email-box">
                <input type="text" name="email" id="email" placeholder="name@email.com" tabindex="2" required>
                <label for="email">Email</label>
                <span>Done</span>
          </div>

      <div class="field tel-box">
                <input type="text" name="tel" id="tel" placeholder="Telephone Number" tabindex="3" required>
                <label for="tel">Mobile</label>
                <span>Done</span>
          </div>

          <div class="field msg-box">
                <textarea id="msg" name="msg" rows="4" placeholder="What's Up?" tabindex="1" required></textarea>
                <label for="msg">Message</label>
                <span>Done</span>
          </div>

          <input class="button" name="submit" type="submit" value="Send" />
  </form>

如果您想查看整个index.html和整个equiry.php文件,可以通过Github:https://github.com/billyfarroll/enquiry_slick_one

1 个答案:

答案 0 :(得分:1)

PHP不是输出格式。 PHP可能会操纵输出,但它不是输出本身。将PHP视为计算器,将HTML视为计算器屏幕上的数字。你的问题没有意义。

有许多不同的输出格式。 HTML只是其中之一,可能与JSON以外的其他人一样。

在这种情况下,您似乎正在发送HTML电子邮件。大多数电子邮件客户端都会显示HTML和CSS;类似于网络浏览器。你想要做的是使用 PHP来生成一些CSS(输出格式)和HTML(也是一种输出格式)来获得你想要的结果。

HTML电子邮件中的CSS比浏览器中的CSS更受限制。为确保在此特定情况下的兼容性,我建议您使用inline styles以获得所需效果。

要在HTML电子邮件中添加您不希望客户拥有的字体,您还可以执行以下操作...

<html>
  <head>
    <style>
    @font-face {
      font-family: 'Lato';
      font-style: normal;
      font-weight: 400;
      src: local('Lato Regular'), local('Lato-Regular'), url(https://some-site/email.woff) format('woff');
    }
    body {
      font-family: "Lato", "Lucida Grande", "Lucida Sans Unicode", Tahoma, Sans-Serif;
    }
    </style>
  </head>
</html>

请注意,这适用于某些电子邮件客户端,而不适用于其他客户端...因此请务必在CSS中使用一些后备字体。