2013-04-22 3 views
2

screen shotПочему PHP разбивает мой CSS?

Я недавно создал контактную форму с PHP-почтой, которая, наконец, работает. Однако сообщение об успехе разбивает мою страницу и отображается в верхнем левом углу, а не под формой. Как вы можете видеть ниже.

Это HTML:

<form method="POST"> 
     <table border="1"> 
      <tr> 
      <td><label for="name" class="g">Name</label></td> 
      <td><input id="name" name="name" type="text" autofocus></td> 
      </tr> 

      <tr> 
      <td><label for="address" class="g">Address</label></td> 
      <td><textarea rows="3" id="address" name="address" cols="50"></textarea></td> 
      </tr> 

      <tr> 
      <td><label for="number" class="g">Contact number</label></td> 
      <td><input id="number" name="number" type="text" autofocus></td> 
      </tr> 

      <tr> 
      <td><label for="email" class="g">Email</label></td> 
      <td><input id="email" name="email" type="text" placeholder="[email protected]" autofocus></td> 
      </tr> 

      <tr> 
      <td><label for="message" class="g">Enquiry</label></td> 
      <td><textarea rows="3" id="message" name="message" cols="50"></textarea></td> 
      </tr> 
      </table> 
      <input type="submit" value="Submit" name="submit"> 
      <?php 
      if ($success) { 
       echo $success; 
      } 
      ?> 

      </form> 

Он также создает огромную пустую белую область в середине моей страницы под формой. Кто-нибудь знает, почему это? или как я буду отлаживать его?

+0

Проверьте ваш элемент успеха с помощью инструмента, как поджигатель. Возможно, некоторые правила CSS вы вызываете это, это не похоже на код, который вы здесь указали. –

+0

Ваш эхо-успех - это после того, как вы закрыли тег, так что, возможно, его нет в тегах? – Svetoslav

+0

, пожалуйста, заполните все теги ввода следующим образом:

ответ

3

Вы должны поместить это в DIV или пролетом

<div style="text-align:center;"> <?php 
     if ($success) { 
      echo $success; 
     } 
     ?> 
</div> 
+0

inline styling - не очень хорошая практика – suspectus

+1

В этом случае он может иметь определенный класс и использовать его в атрибуте класса :) –

+0

Спасибо за ваш ответ. Я пробовал это, и он все еще появляется в левом верхнем углу. Когда я проверяю консоль, это первый объект внутри тела. –

0

Try следующий код:

<form method="POST"> 
    <table border="1"> 
     <tr> 
     <td><label for="name" class="g">Name</label></td> 
     <td><input id="name" name="name" type="text" autofocus></td> 
     </tr> 

     <tr> 
     <td><label for="address" class="g">Address</label></td> 
     <td><textarea rows="3" id="address" name="address" cols="50"></textarea></td> 
     </tr> 

     <tr> 
     <td><label for="number" class="g">Contact number</label></td> 
     <td><input id="number" name="number" type="text" autofocus></td> 
     </tr> 

     <tr> 
     <td><label for="email" class="g">Email</label></td> 
     <td><input id="email" name="email" type="text" placeholder="[email protected]" autofocus></td> 
     </tr> 

     <tr> 
     <td><label for="message" class="g">Enquiry</label></td> 
     <td><textarea rows="3" id="message" name="message" cols="50"></textarea></td> 
     </tr> 
     <?php 
     if ($success) {?> 

      <tr><td colspan="2"> 

      <?php echo $success; ?> 
      </td></tr> 
     <?php } 
     ?> 
     </table> 
     <input type="submit" value="Submit" name="submit"> 

     </form> 
+0

Я пробовал, но все равно не повезло. Спасибо хоть. –

+0

@NicolaConeelee Отправьте ссылку на свой сайт, я также хочу посмотреть, где это? –

+0

@NicolaConeelee hmmm, сначала проверьте свой код. может быть переменной $ success, также добавляется где-нибудь еще в вашем коде, который показывает сообщение выше. и используйте 'if (! empty ($ success))' вместо 'if ($ success)' –

Смежные вопросы