Hướng dẫn css universal selector best practices - các phương pháp hay nhất về bộ chọn phổ quát css

Bộ chọn phổ quát CSS (*) phù hợp với các yếu tố thuộc bất kỳ loại nào.universal selector (*) matches elements of any type.

/* Selects all elements */
* {
  color: green;
}

Bộ chọn phổ quát là một bộ chọn loại đặc biệt và do đó có thể được đặt tên khi sử dụng @namespace. Điều này rất hữu ích khi xử lý các tài liệu có chứa nhiều không gian tên như HTML với SVG hoặc MathML, hoặc XML kết hợp nhiều từ vựng.

  • ns|* - Phù hợp với tất cả các yếu tố trong không gian tên NS
  • *|* - phù hợp với tất cả các yếu tố
  • |* - khớp với tất cả các yếu tố mà không có bất kỳ không gian tên được khai báo

Cú pháp

Dấu hoa thị là tùy chọn với các bộ chọn đơn giản. Ví dụ,

* [lang^="en"] {
  color: green;
}

*.warning {
  color: red;
}

*#maincontent {
  border: 1px solid blue;
}

.floating {
  float: left;
}

/* automatically clear the next sibling after a floating element */
.floating + * {
  clear: left;
}
0 và
* [lang^="en"] {
  color: green;
}

*.warning {
  color: red;
}

*#maincontent {
  border: 1px solid blue;
}

.floating {
  float: left;
}

/* automatically clear the next sibling after a floating element */
.floating + * {
  clear: left;
}
1 tương đương.

Ví dụ

CSS

* [lang^="en"] {
  color: green;
}

*.warning {
  color: red;
}

*#maincontent {
  border: 1px solid blue;
}

.floating {
  float: left;
}

/* automatically clear the next sibling after a floating element */
.floating + * {
  clear: left;
}

HTML

<p class="warning">
  <span lang="en-us">A green spanspan> in a red paragraph.
p>
<p id="maincontent" lang="en-gb">
  <span class="warning">A red spanspan> in a green paragraph.
p>

Kết quả

Không gian tên

Trong ví dụ này, bộ chọn sẽ chỉ khớp các phần tử trong không gian tên ví dụ.

@namespace example url(http://www.example.com);
example|* {
  color: blue;
}

Thông số kỹ thuật

Sự chỉ rõ
Người chọn cấp độ 4 # The-Universal-Selector
# the-universal-selector

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

Mục lục

  • Số 1: Hệ thống phân cấp đặc hiệu Master CSS
    • Thường bỏ qua những điều cơ bản
    • Những điều khó khăn về hệ thống phân cấp tính đặc hiệu của CSS
  • Số 2: Tránh sử dụng! Tuyên bố quan trọng
    • Khi crap chạm vào quạt
    • Giải quyết vấn đề quan trọng
  • Số 3: Don lồng sử dụng IDS
    • Đợi đã, những gì về hiệu suất?
    • Khi nào nó có thể sử dụng ID?
  • Số 4: Tránh các yếu tố quá mức
    • Vấn đề với các yếu tố quá mức
  • Số 5: Đặt lại hoặc bình thường hóa
    • Để đặt lại hoặc bình thường hóa
  • Số 6: Don lồng đặt lại (hoặc bình thường hóa) mọi thứ
  • Kết thúc suy nghĩ về CSS thực hành tốt nhất

CSS có thể khó quản lý ngay cả đối với các nhà phát triển web chuyên nghiệp. Trong loạt bài hai phần này, bạn sẽ tìm hiểu khoảng 14 thực tiễn tốt nhất của CSS. Trong phần đầu tiên này, bạn sẽ học cách làm chủ phân cấp tính đặc hiệu của CSS. Bạn khám phá những nguy hiểm của các tuyên bố bất lực và bộ chọn ID. Bạn cũng sẽ tìm hiểu về chi phí sử dụng các bộ chọn quá mức. Cuối cùng, bạn sẽ học cách tránh sự không nhất quán của trình duyệt. Tìm hiểu cách quản lý CSS như một nhà phát triển CSS chuyên nghiệp và trở thành CSS Ninja!

Số 7-14 là trong Phần 2.

Số 1: Hệ thống phân cấp đặc hiệu Master CSS

Thường bỏ qua những điều cơ bản

Thường bỏ qua những điều cơ bản

Điều thú vị là nhiều người trong số những người này không biết gì về chủ đề này. Những người này xây dựng các trang web và ứng dụng web mà không biết CSS thực sự hoạt động như thế nào. Họ biết điều gì đó về Cascade và có thể cách các trình duyệt đọc các bộ chọn (phải sang trái). Hãy tưởng tượng bạn sẽ biết ai đó có kiến ​​thức tốt về xe hơi. Bạn có yêu cầu người này chế tạo cho bạn một chiếc xe hơi không? Vì bạn thích chính mình và không muốn chết, có lẽ là không.

Chắc chắn, biết hệ thống phân cấp đặc hiệu CSS không phải là vấn đề sống hay cái chết. Tuy nhiên, nếu bạn cần tìm ai đó để xây dựng cho bạn một trang web, bạn nên tìm kiếm chuyên nghiệp. Nếu bạn đồng ý với tôi, Real Professional là người muốn làm chủ nghề của anh ấy. Loại người này bị ám ảnh bởi việc biết từng chi tiết về công việc của mình. Điều gì sẽ xảy ra nếu hệ thống phân cấp đặc hiệu CSS là một trong những chi tiết này? Ngoài ra, điều gì sẽ xảy ra nếu hệ thống phân cấp đặc hiệu CSS là của các thực tiễn tốt nhất của CSS? Sau đó, một người bỏ qua chi tiết này, có thể là người thực sự chuyên nghiệp.

Do đó, nếu bạn muốn trở thành một chuyên gia CSS, bạn phải tìm hiểu về điều này. Ngoài ra, nếu bạn muốn trở thành CSS Ninja, bạn phải làm chủ nó. Bạn phải biết mọi thứ về tính đặc hiệu của CSS. Khi một đứa trẻ nhỏ hỏi bạn về nó, bạn phải có thể giải thích nó với cô ấy. Tôi biết rằng điều này khá khó xảy ra, giống như một cầu vồng. Tuy nhiên, khách hàng tiềm năng hoặc nhà tuyển dụng tiềm năng của bạn có thể hỏi bạn về điều này. Chủ đề này là cách khá tốt để kiểm tra kiến ​​thức của một người khác.

Như chúng ta đã thảo luận, có rất nhiều nhà phát triển biết rất ít hoặc không có gì về hệ thống phân cấp tính đặc hiệu của CSS. Do đó, chủ đề này có thể hữu ích cho các nhà tuyển dụng để tìm những viên đá quý ẩn. Sẽ rất thú vị khi hỏi mọi người trên các trang web như freelancer về điều này. Có bao nhiêu người có thể trả lời câu hỏi này?

Những điều khó khăn về hệ thống phân cấp tính đặc hiệu của CSS

Vì vậy, nếu tính đặc hiệu của CSS là rất quan trọng, tại sao nó là một trong những phần bị bỏ qua nhất của CSS. Ngoài ra, tại sao chỉ có rất ít các nguồn bao gồm các thực tiễn tốt nhất của CSS nói về nó? Một trong những vấn đề có thể là, để làm việc với tính đặc hiệu của CSS, bạn cần phải làm một chút toán học. Trong hệ thống phân cấp này, mọi bộ chọn CSS đều có một số giá trị cụ thể. Ngoài ra, khi bạn kết hợp các bộ chọn, giá trị này tăng lên. Do đó, bộ chọn phần tử đơn giản (a) có độ đặc hiệu thấp hơn hai bộ chọn phần tử (một nhịp).

Bộ chọn CSS phổ quát có giá trị thấp nhất. Giá trị của bộ chọn này bằng không. Nghĩa đen là bất kỳ bộ chọn nào cũng có thể đánh bại nó. Tiếp theo là một yếu tố. Điều này có giá trị của một. Sau đó, có yếu tố với yếu tố giả. Sự kết hợp này có giá trị của hai. Điều này cứ lặp đi lặp lại. Giá trị cao nhất thuộc về sự kết hợp của bộ chọn phần tử, bộ chọn ID, bộ chọn lớp và bộ chọn phần tử. Sự kết hợp này có giá trị bằng 112. Nhân tiện, một bộ chọn ID đứng thứ hai với giá trị 100.

Hãy để tôi cung cấp cho bạn một cái nhìn tổng quan nhanh chóng về hệ thống phân cấp tính đặc hiệu của CSS. Dưới đây, bạn tìm thấy bảng đơn giản để giúp bạn nhanh chóng tìm phân cấp cho tình huống của bạn. Bảng này sẽ cung cấp cho bạn tổng quan nhanh chóng mà không phải tự mình tính toán mọi thứ. Bạn có muốn đi sâu hơn vào chủ đề này? Bạn có muốn thành thạo các thực tiễn tốt nhất của CSS. Sau đó, hãy xem bài viết rất ngắn này & nbsp; tôi đã viết về nó. Nếu không, đây là bảng mà bạn luôn có thể quay lại.

Bảng phân cấp độ đặc hiệu CSS:

* – 0
p – 1 (one element)
li:first-of-type – 2 (one element, one pseudo-element)
ul li – 2 (two elements)
ul ol + li – 3 (three elements)
h2 + *[href*=index] – 11 (one attribute, one element)
ul ol li.list-item – 13 (one class, three elements)
li.list-item.list-item-inline – 21 (two classes, one element)

– 1000 (one inline styling) p – 1 (one HTML selector) article p – 2 (two HTML selectors) .class – 10 (one class selector) div p.class – 12 (two element selectors and a class selector) #id – 100 (one id selector) html #id .class p – 112 (element selector, id selector, class selector, element selector; 1+100+10+1)

Số 2: Tránh sử dụng! Tuyên bố quan trọng

Mục thứ hai trong danh sách thực tiễn tốt nhất CSS của tôi có liên quan đến phân cấp tính đặc hiệu. Vâng, hai thực tiễn tốt nhất tiếp theo của CSS có liên quan đến nó. Tôi hy vọng rằng điều này cho bạn thấy sự phân cấp tính đặc hiệu của CSS quan trọng như thế nào. Dù sao, thực tiễn tốt nhất của CSS này là về không bao giờ sử dụng! Tuyên bố quan trọng. Tại sao tôi nghĩ rằng việc cấm! Quan trọng phải là một trong những thực tiễn tốt nhất của CSS? Lý do là nó dẫn đến vòng xoáy đi xuống mà bạn có thể thoát khỏi. Ý tôi là gì?

Khi crap chạm vào quạt

Hãy tưởng tượng một tình huống khi bạn làm việc với một người đã sử dụng! Tuyên bố quan trọng. Bạn sẽ phải làm việc với người khác vì bạn sẽ không bao giờ làm điều đó. Dù sao đi nữa, hãy để nói rằng bạn phải ghi đè phong cách! Bạn có thể làm gì? Vâng, bạn có một số tùy chọn bạn có thể chọn. Đầu tiên, bạn có thể chấp nhận rủi ro và loại bỏ! Quan trọng được sử dụng bởi đồng nghiệp của bạn. Vấn đề là nó có thể phá vỡ một cái gì đó.

Nếu bạn muốn, bạn có thể loại bỏ tuyên bố đó. Sau đó, bạn sẽ làm một bài kiểm tra để đảm bảo mọi thứ đều ổn. Tuy nhiên, điều này sẽ mất một số thời gian nhất định. Vì vậy, câu hỏi là, nó có đáng không? Tùy chọn thứ hai là sử dụng kiến ​​thức của bạn về hệ thống phân cấp tính đặc hiệu của CSS. Cách duy nhất để đánh bại tuyên bố này là tăng hệ thống phân cấp của bộ chọn. Hãy để nói rằng đồng nghiệp của bạn đã sử dụng nó để tạo thành phần tử với một lớp cụ thể. May mắn thay, anh ta chỉ sử dụng một lớp này để tạo kiểu cho khoảng đó.

Điều này có nghĩa là bạn phải đánh bại một bộ chọn lớp. Bộ chọn này có giá trị là 10. Để đạt được điều này, bạn có thể sử dụng các tùy chọn sau. Đầu tiên, sử dụng hai bộ chọn phần tử và bộ chọn lớp. Thứ hai, một bộ chọn ID. Thứ ba, bộ chọn phần tử, bộ chọn ID, bộ chọn lớp, bộ chọn phần tử. Như bạn sẽ học trong một phút sử dụng ID không phải là trong số các thực tiễn tốt nhất của CSS. Do đó, bạn chỉ còn lại một lựa chọn phù hợp. có nghĩa là gì cho bạn?

Bạn phải sử dụng hai bộ chọn phần tử và bộ chọn một lớp. Nếu không, bạn sẽ phải phá vỡ các thực tiễn tốt nhất của CSS.

Giải quyết vấn đề quan trọng

Ví dụ tôi sử dụng có thể không giống như một vấn đề lớn. Vâng tôi đồng ý với bạn. Điều gì sẽ xảy ra nếu bạn thấy mình trong tình huống khi bạn phải ghi đè! Quan trọng một lần nữa? Đây là vấn đề với quan trọng. Người đầu tiên luôn luôn là vé vào cửa cho người khác. Đây là những gì tôi muốn nói khi tôi đang nói về vòng xoáy đi xuống. Bạn sử dụng một! Quan trọng và chẳng mấy chốc bạn sẽ phải sử dụng một cái khác. Tôi tin rằng cách duy nhất để tránh xoắn ốc này là tránh! Quan trọng.

Đối phó với! Tuyên bố quan trọng tương tự như đối phó với thuốc. Điều tốt nhất để làm là bám sát các thực tiễn tốt nhất của CSS và không bao giờ bắt đầu với nó. Nếu không, bạn đang yêu cầu rắc rối. Đây là lý do tại sao tôi muốn khuyến khích bạn sử dụng CSS Linter. Thật dễ dàng để quên thực hành này. Do đó, sử dụng một số công cụ, như linter này, để kiểm tra mã của bạn có thể rất hữu ích. Ngoài ra, nếu bạn đang sử dụng Gulp, bạn có thể sử dụng các gói như Gulp-CSSLint & NBSP; hoặc Gulp-Sass-Lint. Hãy nhớ rằng, tự động hóa những gì bạn có thể.

Số 3: Don lồng sử dụng IDS

Một mục khác trong danh sách thực tiễn tốt nhất của CSS là không bao giờ sử dụng ID cho các yếu tố kiểu dáng. Những lý do chính để bao gồm điều này trong số các thực tiễn tốt nhất của CSS là gì? Đầu tiên, ID không thể sử dụng lại. Bạn chỉ có thể có một yếu tố có ID cụ thể trên một trang. Do đó, nếu bạn muốn tạo kiểu cho nhiều yếu tố hơn trên cùng một trang, bạn phải sử dụng nhiều ID và dòng CSS hơn. Thứ hai, đây là khởi đầu của một vòng xoáy đi xuống. Vâng, tôi đang nói về những rắc rối với hệ thống phân cấp đặc hiệu CSS. Chúng tôi đã thảo luận về điều này trong thời gian thực hành trước đây! Quan trọng.

Đối số thứ ba chống lại ID là chúng thường đề cập đến các yếu tố cụ thể. Vấn đề là nếu bạn muốn giữ cho CSS của mình ngắn và có thể tái sử dụng. Sau đó, giữ cho phong cách của bạn quá cụ thể không phải là một ý kiến ​​hay. Trong một thực tế, mục tiêu của bạn là ngược lại. Bạn muốn làm cho phong cách của bạn trừu tượng và chung chung hơn. Điều này sẽ giúp bạn sử dụng cùng một phong cách nhiều lần. Vì bạn có thể có nhiều ID cụ thể trên mỗi trang, mục tiêu CSS có thể sử dụng lại này là không thể đạt được.

Đợi đã, những gì về hiệu suất?

Đúng là bộ chọn ID nhanh hơn bộ chọn lớp. Nếu bạn có 1.000 quy tắc, hiệu suất của ID sẽ là khoảng một mili giây & nbsp; tốt hơn. Một lý do có thể cho điều này là bạn chỉ có thể có một bộ chọn ID cụ thể một trang. Tuy nhiên, tôi không nghĩ rằng lợi ích hiệu suất mà bạn sẽ đạt được là đáng kể. Ngoài ra, hãy nhớ rằng lợi ích này chỉ xuất hiện khi bạn đạt được ít nhất 1.000 quy tắc. Đây là một con số khá lớn thường nằm ngoài tầm với của các dự án nhỏ hơn.one millisecond better. One likely reason for this is that you can have only one specific ID selector one a page. Yet, I don’t think that the performance benefit you will gain is significant. Also, keep in mind that this benefit appears only when you reach at least 1,000 rules. This is quite big number that is often out of reach in case of smaller projects.

Một điều khác chúng ta phải nghĩ đến là những gì các bộ chọn ID sẽ có tác động gì đối với hiệu suất. Có nghĩa là, ngay khi bạn thêm bất kỳ bộ chọn ID nào khác, lợi ích hiệu suất đã biến mất. Ngoài ra, nếu bạn muốn nhận bất kỳ mức tăng hiệu suất nào, bạn phải tránh thêm bất kỳ bộ chọn nào sau ID. Điều gì sẽ xảy ra nếu bạn thêm một bộ chọn khác, như lớp hoặc phần tử? Trình duyệt đọc CSS từ phải sang trái. Điều này có nghĩa là bộ chọn bổ sung được quét dưới dạng đầu tiên. Điều này phủ nhận tốc độ có ID.

Tóm lại, cách duy nhất để có được bất kỳ mức tăng hiệu suất nào là sử dụng bộ chọn chỉ bao gồm ID. Ngoài ra, bạn phải có rất nhiều quy tắc CSS để làm cho những lợi ích này hiển thị. Vì 1.000 quy tắc sẽ cung cấp cho bạn một mili giây, bạn nên nhắm đến khoảng 100.000 quy tắc. Điều này có thể giả thuyết cung cấp cho bạn khoảng 100 mili giây. Một điều nữa là sẽ mất bao nhiêu thời gian trình duyệt để quét và hiển thị rất nhiều quy tắc CSS. Do đó, bạn nên tuân thủ các thực tiễn tốt nhất của CSS và tránh sử dụng ID.

Khi nào nó có thể sử dụng ID?

Có một điều tôi muốn đề cập trước khi chúng ta sẽ chuyển sang thực hành khác. Có, tôi ủng hộ việc loại bỏ ID từ các kiểu dáng CSS hoặc SASS của bạn. Tuy nhiên, điều đó không có nghĩa là bạn nên xóa hoàn toàn ID khỏi HTML đánh dấu. Có một trường hợp sử dụng cụ thể cho ID. Tôi thích sử dụng ID cho JavaScript. Như chúng ta đã thảo luận, IDS nhanh hơn một chút. Bạn có thể tăng tốc cho bạn JavaScript, một chút. Ngoài ra, JavaScript có một phương pháp cụ thể, getEuityById ().

Phương pháp này được dành riêng để nhận các yếu tố thông qua thuộc tính ID. Bạn có thể sử dụng ID làm số nhận dạng duy nhất cho các yếu tố cần thêm chức năng. Một lợi ích khác của phương pháp này là bạn sẽ giữ cho CSS và JavaScript của bạn tách biệt. Khi bạn loại bỏ lớp khỏi một yếu tố, bạn không phải lo lắng về việc phá vỡ một số JavaScript. Tất cả JavaScript của bạn chỉ liên kết một cách an toàn với ID. Tuy nhiên, tôi phải thừa nhận rằng tôi không thích sử dụng ID trong quy trình làm việc của mình.

Khi tôi muốn ràng buộc một số JavaScript, tôi sẽ sử dụng lớp với tiền tố của JS JS-. Điều này giúp tôi phân biệt giữa các lớp cho kiểu dáng và các lớp học cho JavaScript. Ngày nay, tôi chỉ sử dụng ID trong một trường hợp. Đây là khi tôi muốn liên kết thẻ neo với một số phần tử trên trang thông qua thuộc tính href. Khi tôi muốn buộc trang phải cuộn đến một nơi nhất định khi người dùng nhấp vào thẻ neo đó. Ngoài trường hợp này, tôi thấy không có lý do gì cho việc sử dụng ID.

Số 4: Tránh các yếu tố quá mức

Số bốn là: Tránh các yếu tố quá mức nhiều nhất có thể. Tôi hứa rằng đây là thực tiễn tốt nhất của CSS liên quan đến hệ thống phân cấp tính đặc hiệu của CSS. Yếu tố quá tiêu chuẩn có nghĩa là gì? Đây là khi bạn sử dụng các bộ chọn quá phức tạp để tạo kiểu cho một yếu tố. Hãy nói rằng bạn muốn tạo kiểu gắn neo mà trông giống như một nút. Cách phù hợp với các thực tiễn tốt nhất của CSS này là sử dụng một cái gì đó như lớp BTN. Biểu đồ CSS hoặc SASS của bạn sẽ chứa một cái gì đó như .BTN {Tiết}.

Khi bạn sử dụng bộ chọn quá mức, kết quả sẽ trông giống như a.btn {Mạnh}. Ví dụ cực đoan hơn có thể là a.btn.btn-big.btn-primary {triệt}. Vấn đề là sử dụng bộ chọn phần tử là không cần thiết. Điều tương tự thường đúng với những lớp học thêm. Bạn chỉ có thể sử dụng lớp .btn. Có ba lý do để tránh các bộ chọn quá mức. Đầu tiên, bạn sẽ giảm kích thước CSS của bạn và bạn sẽ phải viết ít CSS hơn. Thứ hai, bạn sẽ cải thiện hiệu suất chọn.

Vấn đề với các yếu tố quá mức

Như tôi đã đề cập một vài lần, trình duyệt quét CSS từ phải sang trái. Ngoài ra, trình duyệt tìm kiếm phần tử sau mỗi bộ chọn. Ví dụ, hãy để nói rằng bạn có bài viết H2 {}}. Trong trường hợp này, trình duyệt trước tiên sẽ tìm kiếm tất cả các thẻ H2. Sau đó, nó sẽ tìm kiếm tất cả các thẻ H2 cũng được lồng bên trong thẻ bài viết. Bây giờ, những gì về ví dụ nút? Trình duyệt sẽ tìm kiếm các yếu tố với lớp .btn-primary. Sau đó, nó sẽ tìm kiếm các yếu tố với lớp .btn-primary và .btn-big. Tương tự cho .btn và một bộ chọn.

Như bạn có thể thấy, trình duyệt sẽ phải thực hiện bốn chu kỳ chỉ để hiển thị một nút. Điều này hiệu quả như thế nào? Hãy tưởng tượng bạn muốn mua cho những thứ nhỏ nhặt. Bạn sẽ đến cửa hàng bốn lần? Bạn có thể sẽ nỗ lực để lấy mọi thứ cùng một lúc. Khi bạn chỉ sử dụng một lớp hoặc bộ chọn, bạn sẽ làm điều tương tự. Do đó, trình duyệt sẽ chỉ phải đi qua một chu kỳ. Sau đó, nó sẽ hiển thị nút như bạn muốn mà không mất thời gian.

Tôi cho rằng bạn muốn làm cho trang web của bạn nhanh nhất có thể vì mục tiêu của bạn là trải nghiệm người dùng tuyệt vời. Tránh các yếu tố quá mức sẽ giúp các trình duyệt kết xuất CSS nhanh hơn. Kết xuất CSS nhanh hơn sẽ có nghĩa là tải nhanh hơn trang web của bạn. Đây là mục tiêu của bạn. Do đó, tránh các yếu tố quá mức có nghĩa là đạt được mục tiêu của bạn là tạo trải nghiệm người dùng tuyệt vời. Ngọt ngào và đơn giản. Không có gì bạn nên nghĩ về. Bây giờ đến cái tiếp theo.

Số 5: Đặt lại hoặc bình thường hóa

Hãy để tôi hỏi bạn một câu. Khi bạn bắt đầu dự án mới, bạn có đặt lại tất cả các yếu tố thành một kiểu mặc định nào đó không? Nếu không, tôi khuyên bạn nên thực hiện phần này trong quy trình làm việc của bạn. Tại sao? Các trình duyệt khác nhau có xu hướng hiển thị một số kiểu CSS theo một cách khác. Điều này dẫn đến sự không nhất quán nhỏ hơn hoặc lớn hơn trong thiết kế. Do đó, trang web của bạn có thể trông hơi khác một chút về Chrome, Firefox và ở cạnh. Hãy tưởng tượng sự ngạc nhiên đó khi bạn trình bày dự án cho khách hàng của bạn và bố cục của trang web bị phá vỡ.

Bạn có thể giải quyết điều này bằng cách đảm bảo các trình duyệt hiển thị tất cả các yếu tố nhất quán hơn. Điều này có nghĩa là bạn có thể làm hai điều. Đầu tiên, bạn có thể tự đặt lại tất cả các yếu tố. Vấn đề là đây là tốn thời gian. Ngoài ra, nếu bạn làm điều này cho mọi dự án, nó không hiệu quả. Sau đó, có một cách thứ hai. Bạn có thể sử dụng bảng kiểu CSS được tạo sẵn sẽ chăm sóc điều này. Hãy nói rằng bạn đã chọn tùy chọn này. Trong trường hợp đó, bạn phải bao gồm việc đặt lại kiểu đặt lại trước chính của bạn. Đó là nó.

Để đặt lại hoặc bình thường hóa

Tôi thích rằng bạn muốn bám sát các thực tiễn tốt nhất của CSS. Tuy nhiên, khi bạn quyết định chọn thứ hai, bạn phải xem xét một điều nữa. Bạn sẽ sử dụng bảng kiểu nào để loại bỏ những mâu thuẫn của trình duyệt? Hiện tại có hai bảng kiểu bạn có thể chọn. Cái đầu tiên là Normalize & nbsp; SheetSheet được tạo bởi Nicolas Gallagher và Jonathan Neal. Tùy chọn thứ hai của bạn là RESET & NBSP; Hiển thị được tạo bởi Eric A. Meyer.

Bây giờ, trước khi bạn lật một đồng xu để làm cho quyết định này dễ dàng hơn, bạn nên biết về điều gì đó. Hai bảng kiểu này không giống nhau. Cả hai đều theo cách tiếp cận khác nhau để loại bỏ sự không nhất quán của trình duyệt. Bình thường hóa các mục tiêu chỉ các phong cách cần bình thường hóa. Ngoài ra, nhằm mục đích bảo tồn các kiểu mặc định, không xóa chúng hoàn toàn. Nó chứa một số sửa chữa nhỏ để cải thiện khả năng sử dụng. Cuối cùng, nó tương đối mô -đun. Bạn có thể trích xuất hoặc loại bỏ các phần bạn không cần.

Đặt lại kiểu dáng có một chút cách tiếp cận khác nhau. Nó đặt kiểu hình ảnh đồng nhất bằng cách loại bỏ tất cả các kiểu và đặt mặc định chung cho hầu hết các yếu tố. Nó thực sự loại bỏ tất cả các phong cách như in đậm hoặc in nghiêng, v.v. Kết quả là, mạnh mẽ, em và span trông khá giống nhau. Theo nghĩa này, thiết lập lại giống như búa tạ hoặc ram. Bình thường giống như một con dao mổ. Đặt lại StyleSheet Unompromisinging Reseting mọi thứ. Bình thường hóa chỉ đặt lại những gì cần thiết.

Do đó, các bảng kiểu này cũng khác nhau về số lượng mã và cả trong tệp. Vâng, những khác biệt này không quá đáng kể. Tuy nhiên, những khác biệt này tồn tại. Dù sao, bạn nên chọn cái nào? Điều đó phụ thuộc vào cách tiếp cận mà bạn thích. Nếu bạn muốn thực hiện thiết lập lại cứng, RESET sẽ là lựa chọn tốt nhất. Nếu bạn muốn một cái gì đó ít tàn bạo hơn, hãy chọn bình thường. Ngoài ra, đừng quên về những cải tiến về khả năng sử dụng được bao gồm trong bình thường. Lựa chọn cá nhân của tôi? Bình thường hóa.

Số 6: Don lồng đặt lại (hoặc bình thường hóa) mọi thứ

Được rồi, hãy để giả sử bạn đồng ý rằng việc đặt lại hoặc bình thường hóa CSS nên là một trong những thực tiễn tốt nhất của CSS. Don Tiết vội vàng tải xuống và thực hiện đặt lại hoặc bình thường hóa biểu định kiểu. Điều này không có nghĩa là bạn không nên theo dõi thực hành trước đó. Không có gì. Tôi muốn bạn xem xét liệu bạn có thực sự cần toàn bộ. Cả hai, Bình thường hóa và đặt lại, chứa các kiểu cho rất nhiều yếu tố bạn sẽ không sử dụng trong dự án hiện tại của mình. Do đó, không cần thiết phải phình to CSS của bạn với mã này.

Lời khuyên của tôi, và cũng là thực tiễn tốt nhất thứ sáu của CSS, là tùy chỉnh bảng kiểu được tạo sẵn đó. Bạn chỉ nên chọn các phong cách mà bạn thực sự cần và thoát khỏi phần còn lại. Chắc chắn, một vài dòng CSS sẽ không có tác động đáng kể đến hiệu suất hoặc tệp. Tuy nhiên, điều đó không có nghĩa là bạn nên lãng phí tài nguyên. Nếu mục tiêu của bạn là trải nghiệm người dùng tuyệt vời, bạn nên tìm mọi cơ hội để tối ưu hóa trang web của bạn. Vâng, đây là một trong những cơ hội này.

Hãy nhớ rằng các bảng tạo kiểu này được xây dựng theo cách để làm việc trong một loạt các điều kiện. Điều này có nghĩa là một nửa mã không hữu ích cho dự án của bạn. Ngoài ra, có khả năng các kiểu riêng của bạn có thể ghi đè một số mã này. Những bản sao này là an toàn để được loại bỏ. Một lý do khác để mổ xẻ và tùy chỉnh các kiểu dáng này là đạt được sự hiểu biết tốt hơn. Khi bạn đặt lại hoặc bình thường hóa bảng kiểu, bạn sẽ thấy những gì bên trong.

Kết quả là, bạn sẽ tìm hiểu thêm về cách họ làm việc, ít nhất là gần như. Hãy nhớ rằng những kiểu dáng này được duy trì bởi các nhà phát triển web chuyên nghiệp. Bạn có thể học được rất nhiều chỉ bằng cách nhìn và chơi với mã. Và, ai biết được, nó có thể giúp bạn quyết định bảng kiểu nào tốt hơn cho bạn.

Kết thúc suy nghĩ về CSS thực hành tốt nhất

Đây là tất cả các thực tiễn tốt nhất mà tôi có cho bạn ngày hôm nay. Tôi chắc chắn rằng sáu thực tiễn tốt nhất CSS này sẽ giúp bạn cải thiện chất lượng mã CSS của bạn. Hãy để nhanh chóng một bản tóm tắt. Đầu tiên, hệ thống phân cấp đặc hiệu CSS Master CSS. Điều này thường bị bỏ qua một phần của CSS. Tuy nhiên, bạn đã thấy ngày hôm nay rằng nhiều thực tiễn tốt nhất được kết nối với nó. Thứ hai, tránh sử dụng tuyên bố quan trọng. Ngoài ra, don lồng sử dụng ID để tạo kiểu. Hai điều này dẫn đến vòng xoáy đi xuống mà bạn sẽ không có cơ hội trốn thoát.

Tiếp theo là tránh các yếu tố quá mức. Các yếu tố quá mức buộc trình duyệt phải trải qua nhiều chu kỳ hơn là cần thiết để hiển thị các kiểu của bạn. Điều này có thể làm giảm hiệu suất và gây hại cho trải nghiệm người dùng. Cuối cùng, sử dụng RESET hoặc bình thường hóa biểu định kiểu để tránh sự không nhất quán của trình duyệt. Tuy nhiên, hãy đảm bảo tùy chỉnh các kiểu dáng này cho các điều kiện cụ thể của bạn. Nếu không, bạn sẽ làm mờ CSS của mình với mã không cần thiết. Đó là nó.

Nếu bạn thích bài viết này, vui lòng đăng ký để bạn không bỏ lỡ bất kỳ bài đăng nào trong tương lai.

Nếu bạn muốn hỗ trợ tôi và blog này, bạn có thể trở thành người bảo trợ hoặc bạn có thể mua cho tôi một ly cà phê 🙂

Hướng dẫn css universal selector best practices - các phương pháp hay nhất về bộ chọn phổ quát css
Trở thành một biểu tượng paypal bảo trợ quyên góp qua PayPal

Bạn có nên sử dụng bộ chọn phổ quát trong CSS không?

Bộ chọn phổ quát là một bộ chọn loại đặc biệt và do đó có thể được đặt tên khi sử dụng không gian @Namespace. Điều này rất hữu ích khi xử lý các tài liệu có chứa nhiều không gian tên như HTML với SVG hoặc MathML, hoặc XML kết hợp nhiều từ vựng.useful when dealing with documents containing multiple namespaces such as HTML with inline SVG or MathML, or XML that mixes multiple vocabularies.

Bộ chọn phổ quát có chậm trong CSS không?

Bộ chọn phổ quát của CSS rất chậm và nên tránh - một lời nói dối khác!Nhìn chung, phát triển web có một vấn đề thực sự với suy nghĩ trung thực và hợp lý.Có rất nhiều điều vô nghĩa được quảng bá là thực tiễn tốt, hoàn toàn dựa trên sự thật được sản xuất mà không dựa trên bất kỳ cách nào, hình dạng hay hình thức trong thực tế.The CSS Universal Selector Is Slow And Should Be Avoided” — Yet Another Lie! As a whole, web development has a real problem with honesty and rational thought. There's a lot of pedantic nonsense promoted as good practice, based entirely in manufactured “truths” that aren't based in any way, shape, or form in reality.

Cái nào là bộ chọn tốt nhất trong CSS?

Bộ chọn lớp là bộ chọn chung hữu ích nhất được sử dụng bởi các nhà phát triển.Bạn có thể xác định bộ chọn lớp bằng thời gian (.) Theo sau là tên lớp.Nó cung cấp kiểu dáng cho tất cả các yếu tố với một thuộc tính lớp được chỉ định. is the most useful common selector used by the developers. You can define the class selector using period (.) followed by the class name. It gives styling to all elements with a specified class attribute.

Bộ chọn nào có ưu tiên cao nhất trong CSS?

Bộ chọn ID có mức độ ưu tiên cao nhất vì tính chất duy nhất của định nghĩa thuộc tính ID.Chúng tôi có hai lớp với một bộ chọn ID ở đây, nó sẽ áp dụng kích thước phông chữ: 12px và trọng lượng phông chữ: 500 do quy tắc đặc hiệu vì bộ chọn ID có mức độ ưu tiên cao nhất sau CSS. has highest priority because of unique nature of the ID attribute definition. We have two classes with one ID selector here it will apply font-size:12px and font-weight:500 due to the specificity rule as ID selector has highest priority after inline CSS.