2012-03-08 35 views
5

Tôi muốn biết ví dụ nào sau đây sẽ hoạt động tốt hơn. Nếu hiệu suất là như nhau, cái nào đọc tốt hơn? (Selectors Lặp đi lặp lại)Tốc độ nào nhanh hơn: lặp lại các kiểu hoặc bộ chọn lặp lại?

Ví dụ 1

.helpfulCommenter, .questionTroll { color: #f00; }

.questionTroll { text-decoration: line-through; }

hoặc

(phong cách lặp lại)

Ví dụ 2

.helpfulCommenter { color: #f00; }

.questionTroll { color: #f00; text-decoration: line-through; }

tôi biết tên lớp là không phải ngữ nghĩa và các phong cách cụ thể được trình bày ở đây là không liên quan. Tôi chỉ muốn biết những trình duyệt nào trong số này làm cho việc phân tích cú pháp và triển khai thực hiện dễ dàng hơn.

+0

Hiệu suất của việc này có thể khác nhau giữa các trình duyệt và phụ thuộc rất nhiều vào số lượng yếu tố và bộ chọn bạn có. Cuối cùng, mặc dù, sự khác biệt về hiệu suất ở đây là không quan trọng — chọn bất kỳ cái nào có ý nghĩa ngữ nghĩa hơn. –

+0

Các tên lớp vi phạm các thực hành tốt (bạn đang mã hóa cứng các giá trị ("đỏ", "đậm") vào tên lớp). Bạn nên tìm ra những cái tên tốt hơn (đúng) ... –

+2

@ ŠimeVidas: Tôi chắc rằng đây chỉ là những ví dụ mà anh ấy đưa ra. – xbonez

Trả lời

2

Sự khác biệt về hiệu suất rất nhỏ nên không liên quan.

Tránh xa ví dụ 2 vì rất có thể, sẽ trở thành một nhức đầu bảo trì nếu bị lạm dụng.

+0

Đó là những gì tôi đã suy nghĩ, rằng sự khác biệt giữa hai liên quan đến bảo trì mã hơn hiệu suất . Liệu điều tương tự có áp dụng nếu tôi có nhiều lớp (> 50 hoặc thậm chí vào hàng trăm) mà cần phải chia sẻ phong cách? – Jason

+0

@ Jason: Khá nhiều. – BoltClock

+0

@ Jason làm thế nào nó sẽ khác với việc có cùng một định nghĩa về các bộ chọn khác nhau. Nếu bạn thiết kế 'CSS' của mình đúng cách, bạn nên có các kiểu xếp tầng để giảm thiểu sự lặp lại và một StyleSheet được rút ngắn. – xandercoded

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