Helpex - Trao đổi & giúp đỡ Đăng nhập
104

Phần sau được lấy từ thiết lập lại CSS của Yahoo. Ai đó có thể vui lòng giải thích mục đích của các dấu hoa thị không?

body {
  font:13px/1.231 arial,helvetica,clean,sans-serif;
  *font-size:small;
  *font:x-small;
}
104 hữu ích 0 bình luận 18k xem chia sẻ
118

Đây là một bản hack CSS dành riêng cho trình duyệt dành cho phiên bản 7 trở xuống của Internet Explorer.

*giá trị tài sản

Mặc dù Internet Explorer 7 đã sửa chữa hành vi của nó khi tên thuộc tính có tiền tố là dấu gạch dưới hoặc dấu gạch nối, các tiền tố ký tự không phải chữ và số khác được xử lý như trong IE6. Do đó, nếu bạn thêm một ký tự không phải chữ và số, chẳng hạn như dấu hoa thị (*) ngay trước tên thuộc tính, thuộc tính sẽ được áp dụng trong IE chứ không phải trong các trình duyệt khác. Không giống như với phương pháp gạch nối và dấu gạch dưới, đặc tả CSS không đặt trước dấu hoa thị làm tiền tố, vì vậy việc sử dụng phương pháp hack này có thể dẫn đến hành vi không mong muốn khi các đặc tả CSS phát triển.

* thuộc tính: giá trị áp dụng giá trị thuộc tính trong IE 7 trở xuống. Nó có thể hoạt động hoặc có thể không hoạt động trong các phiên bản trong tương lai. Cảnh báo: điều này sử dụng CSS không hợp lệ.

Từ: http://www.javascriptkit.com/dhtmltutor/csshacks3.shtml

118 hữu ích 0 bình luận chia sẻ
6

Đó là một cuộc tấn công Internet Explorer. Nếu bạn thêm một ký tự không phải chữ và số, chẳng hạn như dấu hoa thị (*) ngay trước tên thuộc tính, thuộc tính sẽ được áp dụng trong IE7 trở xuống, nhưng không áp dụng trong các trình duyệt khác.

http://www.javascriptkit.com/dhtmltutor/csshacks3.shtml

6 hữu ích 0 bình luận chia sẻ
1

Tất cả các trình duyệt nhưng IE bỏ qua các quy tắc. Nó được gọi là hack ngôi sao. Tôi nghĩ rằng IE7 sẽ bỏ qua các quy tắc trong chế độ tiêu chuẩn.

Trong trường hợp này, quy tắc phông chữ được đặt và sau đó được ghi đè cho IE 6 và đôi khi là 7.

1 hữu ích 2 bình luận chia sẻ
0

Theo như tôi biết, dấu hoa thị ngăn Firefox đọc thuộc tính, nhưng có hiệu lực trong IE.

0 hữu ích 0 bình luận chia sẻ
0

Đó là một cuộc tấn công CSS, quy tắc đó sẽ chỉ được áp dụng cho IE7 trở xuống.

Tuy nhiên, tôi không khuyến khích sử dụng nó, có nhiều cách tốt hơn để khắc phục sự không tương thích của IE.

0 hữu ích 0 bình luận chia sẻ
0

Đặt các ký tự như vậy là một cách hack / giải pháp để khiến IE 6 sử dụng thuộc tính của một kiểu, đồng thời ẩn nó khỏi các trình duyệt "lành mạnh" hơn.

Từ đây :

Để cắt ngắn một câu chuyện dài, trình phân tích cú pháp CSS của Internet Explorer quá tích cực trong việc cố gắng khám phá tên của các thuộc tính và trên thực tế sẽ bỏ qua các ký tự không phải chữ và số ở đầu. Từ thử nghiệm của tôi, điều này dường như đúng với trường hợp ít nhất từ ​​IE5 trở đi.

0 hữu ích 0 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ css , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading