2008-10-09 19 views

Trả lời

16

Có nhiều yếu tố liên quan đến việc xác định kiểu nào ghi đè lên một kiểu khác. Tuyên bố kiểu thấp hơn xuất hiện trong các trường hợp cascadecụ thể hơn là nó đang nhắm mục tiêu phần tử, nó càng nặng hơn so với các kiểu khác.

Đây là CSS2 standard cho phong cách thừa kế:

  1. Nếu kết quả thác trong một giá trị, sử dụng nó.
  2. Nếu không, nếu thuộc tính được kế thừa, hãy sử dụng giá trị của phần tử gốc , thường là giá trị được tính.
  3. Nếu không, hãy sử dụng giá trị ban đầu của thuộc tính. Giá trị ban đầu là mỗi thuộc tính được chỉ định trong định nghĩa của thuộc tính .

Nội bộ, trình duyệt sẽ calculate the specificity of a rule, theo tiêu chuẩn. ! Tuyên bố quan trọng sẽ thêm trọng lượng cho sự cai trị, nhưng tự động gán một thuộc tính style thường sẽ được ưu tiên, bởi vì nó thường là quy định hơn-đánh giá cao ..

+0

Cũng là một thuộc tính phong cách được gán động * là * bị ghi đè bởi! Quan trọng trong IE7, IE6 và FF2 tại thời điểm đó là lý do tại sao tôi tò mò (nó mong muốn được theo cách này, chỉ tò mò :-)) –

+0

Xem qua các kiểu và xem cách chúng cân nhắc theo tiêu chuẩn .. – keparo

+0

Tôi có kiểu = "display: none;" so với div # id div {display: block! important; }. Chiến thắng thứ hai. http://www.w3.org/TR/CSS2/cascade.html#important-rules có thể được một số người quan tâm. –

0

Tôi chắc chắn không phải tất cả các trình duyệt đều nhận ra tuyên bố quan trọng! Nhưng không thể nhớ cái nào làm ra đầu tôi. Sẽ kiểm tra và lấy lại cho bạn.

[EDIT] Tôi có thể xác nhận IE6 trở về trước không nhận ra điều quan trọng (trừ khi trình duyệt ở chế độ tuân thủ tiêu chuẩn - không phải mặc định).

Bạn có thể sử dụng! Quan trọng để ghi đè quy tắc nội tuyến. Nhưng cũng nên nhớ rằng các quy tắc nội tuyến cũng có thể được gắn thẻ!

+0

Heh, tôi có IE6 đang chạy ở chế độ tuân thủ tiêu chuẩn và đang nghe bản tuyên bố quan trọng! Tốt điểm trên phong cách nội tuyến! –

+0

Như Graphain nói, IE6 có thể hỗ trợ! – ceejayoz

+0

Tôi sẽ sửa bài viết của tôi – Dr8k

11

Vâng để nghiên cứu xa dường như cho thấy:

  • IE7 hỗ trợ!
  • Hỗ trợ FireFox 2 và 3!
  • IE6 hỗ trợ! Quan trọng trong chế độ tuân thủ tiêu chuẩn.

Tuy nhiên, IE6 (có thể IE7) không hỗ trợ quan trọng trong this case:

someselector { 
    property: value !important; 
    same-property: another-value; 
} 

Nó sẽ sử dụng giá trị thứ hai (niêm yết cuối cùng).

này được xác nhận bởi this page:

Trong Internet Explorer 6 trở về trước, nếu một tuyên bố quan trọng xuất hiện trước khi tuyên bố bình thường đối với các sở hữu cùng trong cùng một khối khai , bình thường khai sẽ ghi đè tờ khai quan trọng .

Internet Explorer 6 và 7 cho trọng tuyên bố khi nhận dạng bất hợp pháp được sử dụng ở vị trí của từ khóa quan trọng, thay vì bỏ qua những lời tuyên bố như họ nên.

Nhận xét của Gizmo cho biết rằng Safari và Opera hỗ trợ!

+1

nó thực sự là một cách dễ dàng để có được phong cách chỉ có IE. #myBox {width: 300px! width: 290px} ... chỉ cần chắc chắn rằng bạn bình luận nó, vì vậy mà anh chàng tiếp theo là trái gãi đầu của mình! – nickf

+0

Safari và Opera hỗ trợ nó rất tốt. – gizmo

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