2010-02-05 28 views
5

Bạn tôi đã gửi cho tôi liên kết đến số page nhỏ này hiển thị trang HTML + CSS được phân trang đơn giản. Tuy nhiên, nếu bạn nhìn vào mã nguồn, bạn sẽ thấy không có liên kết đến tệp css.Tệp CSS "Ẩn" chỉ hoạt động cho FF, Opera

Nếu bạn đang sử dụng ff với firebug, bạn có thể thấy rằng dưới NET, tệp css được liên kết thông qua một tiêu đề đã gửi (chỉ muốn hiển thị y'all đó).

Câu hỏi của tôi là, bạn có bất kỳ giả định nào là lý do tại sao điều này không hoạt động với safari hay không? Tôi cho rằng các tiêu đề không phụ thuộc vào trình duyệt. Đưa cái gì?

Trả lời

3

Bạn có thể tìm thấy điều này một nguồn tài nguyên hữu ích: http://www.w3.org/TR/html4/present/styles.html#h-14.6

Không chắc lý do tại sao nó không hoạt động trong Safari/Chrome (Webkit) nhưng nó có thể là vì điều này:

Phần này chỉ áp dụng cho các tác nhân người dùng tuân theo các phiên bản HTTP xác định trường tiêu đề Liên kết. Lưu ý rằng HTTP 1.1 như được định nghĩa bởi [RFC2616] không bao gồm trường tiêu đề Liên kết (tham khảo phần 19.6.3).

1

Đây là một phần của thông số HTML, mặc dù không phải là một phần chuẩn của HTTP 1.1. (RFC2616 không xác định trường Liên kết.)

Do đó, tùy thuộc vào từng tác nhân người dùng cá nhân để triển khai. Nó khá mơ hồ, và không phải là rất hữu ích, vì vậy tôi đoán rằng nó không được thực hiện trong Webkit hoặc do không nhận thức, hoặc cố tình có ý định để tránh các tính năng tối nghĩa.

+0

Nó không phải là một phần của thông số HTML. Đó là một phần của RFC HTTP 1.0, với mục tiêu rõ ràng là cung cấp liên kết tài nguyên cho các tài nguyên không phải HTML. :-) –

0

http://www.w3.org/TR/html4/present/styles.html#h-14.6

14,6 Liên kết đến style sheets với tiêu đề HTTP

Phần này chỉ áp dụng cho các đại lý sử dụng phù hợp với các phiên bản của HTTP định nghĩa một lĩnh vực liên kết tiêu đề. Lưu ý rằng HTTP 1.1 như được định nghĩa bởi [RFC2616] không bao gồm trường tiêu đề Liên kết (tham khảo phần 19.6.3).

Về cơ bản, đây không phải là tiêu chuẩn trong http 1.1.

+0

Một chút tắt chủ đề, nhưng WebKit (sai?) 'Cho phép' Javascript trong tiêu đề của nó. Xem http://ha.ckers.org/weird/chrome-redirection.cgi và các tiêu đề của nó, so sánh các trình duyệt WebKit với các trình duyệt khác ... –

1

Tiêu đề HTTP mà nó gửi là Link: <style.css>; REL=stylesheet, tương đương với phần tử HTML <link rel="stylesheet" href="style.css" />.

Đó là tiêu đề được hỗ trợ HTTP 1.0. Đã thêm vào RFC2068, 19.6.1.2 LINK, bị xóa trong RFC2616 (cùng với PATCHUNLINK) do thiếu triển khai.

0

Mozilla thực sự có một bài viết MDC có tiêu đề Link prefectching mà đi vào hầu như tất cả mọi thứ bạn muốn biết về điều này và tại sao họ hỗ trợ nó. Cá nhân tôi nghĩ rằng nó có vẻ như một sự lãng phí rất lớn về thời gian và băng thông và chỉ để lại một cánh cửa mở cho các cuộc tấn công của trình duyệt. Dưới đây là câu nói giải quyết trực tiếp câu hỏi của bạn:

Trình duyệt nào hỗ trợ tìm nạp trước liên kết?

trình duyệt dựa trên Mozilla 1.2 (hoặc sau) cũng như các trình duyệt dựa trên Mozilla 1.0.2 (hoặc mới hơn) hỗ trợ tìm nạp trước. Điều này bao gồm Firefox và Netscape 7.01+.Camino được tạo từ tháng 3 năm 2003 dựa trên Mozilla 1.0.1, và do đó không hỗ trợ việc tìm nạp trước . Kiểm tra trình duyệt của bạn để xem nếu trình duyệt hỗ trợ Tìm nạp trước liên kết.

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