Important Css Là Gì

Cách cực tốt đề lý giải nó là bước đầu với một ví dụ vẫn làm chúng ta khó gọi và hoàn toàn có thể sẽ hoạt động không như bạn hy vọng đợi.Sau đó bọn họ sẽ chăm chú kĩ hơn về cách tính quý hiếm đặc hiệu mà selector sẽ được ưu tiên.Bạn đang xem: áp dụng !important vào css

Đây là một trong list dễ dàng và không có thứ tự:

ul id="summer-drinks"> li>Whiskey and Ginger Aleli> li>Wheat Beerli> li>Mint Julipli>ul>Bây giờ bạn muốn chỉ định một thức uống thành ái mộ trong danh sách đồ uống của công ty và biến hóa nó về style một ít. Bạn phải một hook cho điều đó nên các bạn sẽ áp dụng nó thông qua một class name mang lại nó.

Bạn đang xem: Important css là gì

ul id="summer-drinks"> li class="favorite">Whiskey and Ginger Aleli> li>Wheat Beerli> li>Mint Julipli>ul>Bây giờ các bạn hãy mở tệp tin CSS của chúng ta và styling mang đến class mới:

.favorite color: red; font-weight: bold;Sau đó chúng ta nhìn coi nó làm việc thế nào, mà lại nó không làm việc! Một cái nào đấy đang tạo ra vấn đề sống đây.

Đi sâu rộng vào file CSS, bạn sẽ thấy điều này:

ul#summer-drinks li font-weight: normal; font-size: 12px; color: black;Vấn đề nằm tại ngay đó. Hai CSS selectors khác biệt đang nói mang lại đoạn text kia có color và font-weight gì. Cơ mà chỉ có một lệnh cho font-size nên cụ thể cái đó sẽ sở hữu được hiệu lực. Không tồn tại xung chợt gì ở đây cả cơ mà trình duyệt buộc phải quyết định trong số những lệnh kia để áp dụng và hiển thị chúng. Nó làm bằng cách tuân theo một cỗ quy tắc tiêu chuẩn.

Tôi suy nghĩ rằng vấn đề đó sẽ gây chút khó khăn khăn cho người mới bắt đầu bởi do họ chưa hoàn toàn nhận ra điều này. Họ có lẽ rằng nghĩ bởi class .favorite nằm sâu rộng trong CSS hoặc cũng chính vì nó gần với chữ hơn trong HTML :v sẽ là người chiến thắng.

Xem thêm: Doanh Thu Các Câu Lạc Bộ Bóng Đá 2017, Chelsea Công Bố Doanh Thu Kỷ Lục Năm 2017

Trong thực tế, sản phẩm công nghệ tự của các selectors vào CSS sẽ đóng vai trò thiết yếu và luật lệ "từ bên trên xuống" vẫn được vận dụng khi giá trị đặc hiệu là như là nhau. Cho ví dụ:

favorite color: red;.favorite color: black;Ở dây nó sẽ sở hữu màu black... Nhưng họ đang lạc đề :v

Vấn đề ở đấy là chúng ta mong mỏi nó rõ ràng để nó bao gồm ý nghĩa với mọi ví dụ mà chúng ta có. Trong cả với ví dụ đơn giản dễ dàng được trình diễn ở trên, sau cuối bạn cũng trở nên thấy chỉ việc sử dụng class name nhằm mục tiêu tới phương châm "favorite drink" là không chuyển đổi hoặc đã không an ninh ngay cả lúc nó chuyển động . Vẫn thông mình hơn nếu sử dụng vấn đề đó :

ul#summer-drinks li.favorite color: red; font-weight: bold;Đó là hầu hết là cơ mà tôi đang gọi là " rõ ràng để nó tất cả ý nghĩa". Bạn thực sự hoàn toàn có thể "cụ thể" hơn khi áp dụng kiểu dạng như vậy này:

html body toàn thân div#pagewrap ul#summer-drinks li.favorite color: red; font-weight: bold;Nhưng nó đã là code Css của khách hàng khó đọc cùng không với lại lợi ích thực tế. Một bí quyết khác để tăng giá trị quánh hiệu mang đến class ".favorite" của doanh nghiệp là sử dụng important!

!important rất có thể dễ dàng áp dụng sai nếu hiểu nhầm. Nó là cách giỏi để giữ đến code của người sử dụng sạch hơn, trong các ví dụ mà chúng ta biết những elements với các class selector ví dụ nên áp dụng style đồng nhất bất kể nó là gì. Ngược lại, không nên sử dụng trick để ghi đè lên trên style của một element nào đó thay bởi vì tìm ra giải pháp CSS được viết với hoạt đông theo người sáng tác ban đầu.

Một ví dụ kinh khủng là:

last margin-right: 0 !important;Tôi thường sử dụng nó trong những tình huống có nhiều khối nối, cho khối sau cùng bên phải trong một row. Điều đó đảm bảo an toàn chắc chắn khối sau cùng không có bất cứ right margin làm sao điều này sẽ giúp nó nằm liền kề nề phải so với phụ huynh nó. Mỗi khối hoàn toàn có thể có các Css selector rõ ràng để thêm right margin cho chúng, cơ mà !important vẫn phá vỡ điều này và khiến cho class nhìn đơn giản dễ dàng và clear hơn.

Tính quý giá đặc hiệu CSS

Tại sao cố gắng đầu tiên của bọn họ để biến đổi color và font-weight thất bại? Như bọn họ đã học, kia là bởi vì chúng ta đơn giản chỉ dụng class name có giá trị đặc hiệu thấp rộng selector khác. Css áp dụng các trọng số quánh hiệu khác mang đến id với class. Trong thực tiễn một Id có mức giá trị cao hơn nhiều! vì vậy thiết yếu một class hoàn toàn có thể vượt qua được id.

Chúng ta hãy coi cách những con số thực sự được tính toán:

*

Nói cách khác:

Nếu bộ phận có inline styling, tự động đó sẽ win (1,0,0,0 điểm)Mỗi ID vận dụng (0,1,0,0 điểm)Mỗi class (hoặc pseudo-class hoặc attribute selector) vận dụng (0,0,1,0 điểm)Với mỗi tham chiếu thẳng element bao gồm (0,0,0,1 điểm)

Nói chung, bạn có thể đọc cực hiếm như các con số, như 1,0,0,0 là "1000", vì thế nó cụ thể sẽ thắng độ sệt hiệu 0,1,0,0 hoặc "100". Vết phẩy tại đây thực sự để nói nhở bọn họ rằng nó chưa hẳn thực sự là "base 10". Về khía cạnh kĩ thuật chúng ta có thế có mức giá trị như 0,1,13,4 cùng "13" ko tràn ra như "base 10".

Tính toán một cách đối chọi giản


*

*

*

*

Chú ý quan tiền trọngSelector thông dụng (*) không có giá trị quánh hiệu (0,0,0,0)Pseudo-elements (e.g. :first-line) có mức giá trị (0,0,0,1) không giống như anh em của chúng psuedo-class có mức giá trị (0,0,1,0)pseudo-class :not() ko thêm tính quánh hiệu của bao gồm nó, Chỉ cái gì bên trong dấu () new được thêm tính quánh hiệu.Thêm !important sẽ có tác dụng nó tự động win :v. Nó đã ghi đè trong cả inline style. Chỉ việc !important là hoàn toàn có thể ghi đè đầy đủ thứ. !important được khai báo sau vào CSS với giá trị bằng hoặc to hơn. Bạn có thể nghĩ nó đang thêm (1,0,0,0,0) tới quý giá đặc hiệu.Nguồn tham khảo

css-tricks