2012-03-27 26 views
5

Tôi muốn tạo kiểu thư cho thân máy. Tôi đã thử các phương pháp dưới đây để tạo kiểu cho thân thư. Nhưng tất cả trong số họ đã không làm việcCách tạo kiểu email trong php

1) Được sử dụng phong cách bên ngoài tấm style.css

td{padding:10px;} 

mail.php

<link rel="stylesheet" href="style.css"></link><table><td>....</td></table> 

2) Defined Style Sheet nội bộ:

mail.php

<style type="text/css"> 
td{ 
    padding-bottom:8px; 
} 

</style> 
<table><td>....</td></table> 

tôi biết, Inline phong cách hoạt động bằng cách làm <td style='padding-bottom:8px'>, Nhưng tôi đã có nhiều bảng biểu, làm phong cách nội tuyến không phải là một ý tưởng tốt, Có bất kỳ công việc xung quanh để không cần phải xác định phong cách cho mỗi phần tử

+1

Khách hàng email rất, rất cầu kỳ về những thứ CSS họ sẽ và sẽ không hiển thị. Đặt cược tốt nhất của bạn là tìm một hướng dẫn toàn diện về tạo kiểu email (mong muốn tôi có thể nghĩ ra một liên kết ngoài đỉnh đầu của tôi nhưng tôi không thể). – Corbin

+1

Tôi không thể tìm thấy. Tôi thấy rằng các ứng dụng email độc lập là hoang tưởng về bảo mật nhưng ít nhất cũng sẽ hiển thị hầu hết HTML. Những thứ điên rồ là khi bạn cố gắng hỗ trợ các nhà cung cấp miễn phí. Gmail tách hình nền nhưng để lại màu. Hotmail biến tất cả các màu nền thành màu xám. Yahoo làm điều gì đó khác. Làm cho tôi muốn gửi một email thuần túy chỉ nói "sao chép URL này vào trình duyệt của bạn". – ghoti

+0

phiên bản cũ hơn của triển vọng sẽ bỏ qua hầu hết css, và hiện đại css positining .. –

Trả lời

7

cho email, thường là đặt cược an toàn nhất là các bảng và kiểu nội tuyến (Mọi thứ bạn không nên làm trong thiết kế web).

$mailBody = '<html><body>'; 
$mailBody .='<table width="100%"><tr>'; 
$mailBody .='<td style="padding:10px"></td>'; 
$mailBody .='<td style="padding:10px"></td>'; 
$mailBody .='<td style="padding:10px"></td>'; 
$mailBody .='</tr></table>'; 
$mailBody .='</body></html>'; 

Bảng phong cách nội bộ và bên ngoài đáng buồn không phải lúc nào cũng hoạt động trên các ứng dụng email khác nhau.

+1

là điều này vẫn còn đúng? – Roy

0

Có một giải pháp. Vui lòng kiểm tra điều này: CSS to Inline style

Ngoài ra còn có một thư viện khác thực hiện tác vụ tương tự. http://www.pelagodesign.com/sidecar/emogrifier/

Về cơ bản các thư viện này chuyển đổi quy tắc phong cách css của bạn vào phong cách nội tuyến, do đó tất cả các khách hàng email sẽ làm cho tài liệu HTML của bạn một cách chính xác

2

Điển hình bảng là con đường để đi. Thật không may để nhận được sự hỗ trợ rộng rãi nhất mà bạn cần sử dụng kiểu nội tuyến. Rất nhiều làm cascade vì vậy bạn không cần phải phong cách mỗi yếu tố tuy nhiên. Ví dụ: sử dụng font-family trên một yếu tố table sẽ áp dụng nó cho td yếu tố.

màn chiến dịch cung cấp một cái nhìn tổng quan hữu ích hỗ trợ cho CSS trên email client phổ biến nhất ở đây http://www.campaignmonitor.com/css/

soạn Email (http://htmlemailboilerplate.com/) cũng sẽ cung cấp cho bạn với một mẫu mà bạn có thể bắt đầu và nó sẽ dạy bạn làm thế nào để tránh rất nhiều những thiếu sót phổ biến của nhiều ứng dụng email.

Các vấn đề liên quan