Tại sao Drupal 7 thích các quy tắc CSS @import hơn các thẻ <link>?


25

"Đừng sử dụng @import," nhiều người nói.

Có rất nhiều thiếu sót của việc sử dụng @import.

  • Sử dụng @importtrong biểu định kiểu sẽ thêm một vòng cho thời gian tải xuống chung của trang.
  • Sử dụng @importtrong IE khiến thứ tự tải xuống bị thay đổi. Điều này có thể khiến các bảng định kiểu mất nhiều thời gian hơn để tải xuống, điều này cản trở việc hiển thị tiến trình khiến trang cảm thấy chậm hơn.

Tại sao Drupal 7 sử dụng nó?

Tôi muốn thay đổi các @importquy tắc thành <link>thẻ. Tôi có thể làm cái này như thế nào?


1
+1 cho câu hỏi, tôi chỉ muốn hỏi tương tự, và sau đó tìm thấy câu hỏi của bạn, cảm ơn!
Sk8erPeter

Câu trả lời:


22

Không sử dụng @import để nhập tệp css :

@import chỉ được sử dụng trong chế độ tổng hợp không CSS. Điều này được thực hiện để giải quyết giới hạn IE với số lượng thẻ.

Điều này sẽ giải thích lý do và làm thế nào để thoát khỏi nó. Bất kỳ trang web sản xuất nào cũng nên sử dụng tổng hợp CSS và không có @import.


1
+1, cảm ơn vì câu trả lời. Vì vậy, đây là cách giải quyết cho mô-đun IE CSS Tối ưu hóa ( drupal.org/project/ie_css_optimizer ) phải được sử dụng trong Drupal 6 để khắc phục sự cố mà Internet Explorer từ chối tải hơn 31 bảng định kiểu được liên kết.
Sk8erPeter

Tôi biết rằng đây là một vài năm sau đó và hầu hết mọi người lành mạnh không sử dụng IE. Thật không may, tôi không làm việc cho hầu hết những người lành mạnh. Khi sử dụng respons.js trong IE 8, nó không hoạt động khi sử dụng @imports. gotcha này có thể khó tìm
DeveloperChris

Đối với tôi, tôi chưa bao giờ bị giới hạn trong các thẻ IE. Vì vậy, nó có vẻ như quyết định ngu ngốc. Ghi đè vấn đề mà hầu như không bao giờ xảy ra. Nếu có nhiều tệp CSS, bạn phải nghĩ cách hợp nhất hầu hết các phần của chúng. Để tăng tốc độ tải trang.
Rantiev

-1, Câu trả lời này không trả lời hai câu hỏi trong bài gốc. Tại sao Drupal sử dụng @import và làm thế nào để chúng ta thay đổi nó?
Colin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.