Các quy ước đặt tên lớp / tiêu chuẩn CSS


7

Khi xây dựng một thành phần tùy chỉnh và trong khi thiết kế tệp bố cục để hiển thị chế độ xem, tôi gặp khó khăn trong việc xác định các lớp / id CSS nào sẽ sử dụng trong các phần tử HTML của mình để đảm bảo nó tận dụng CSS tích hợp Joomla và các Mẫu khác.

Tôi hiểu rằng Joomla sử dụng Bootstrap cung cấp mức độ nhất quán và có thể được tham khảo tại đây: http://getbootstrap.com/2.3.2/base-css.html

Tuy nhiên, bên cạnh việc triển khai Bootstrap, có bất kỳ lớp / id CSS tiêu chuẩn nào mà tôi có thể sử dụng để đảm bảo tính nhất quán trên nhiều mẫu có sẵn không? Và nếu vậy, có bất kỳ tài liệu tham khảo nào cho các lớp / id CSS này không?

Tôi đoán tôi đang hỏi nếu bạn thiết kế giao diện của thành phần, bạn sẽ thực hiện những bước nào để đảm bảo rằng giao diện hoạt động kết hợp với Joomla và các mẫu khác?


Bất cứ điều gì bạn kết thúc, tôi khuyên bạn nên làm cho thành phần của mình dễ dàng ghi đè nhất có thể. Nó làm cho mọi thứ dễ dàng hơn cho những người xây dựng trang web như tôi. Chẳng hạn, nếu bạn có toàn bộ danh sách các mục xuất hiện ở mặt trước và mỗi mục là một loại mục khác nhau, không chỉ cung cấp cho chúng tất cả cùng một lớp, mà còn cung cấp cho chúng tất cả một lớp bổ sung, duy nhất cho mỗi mục. Loại điều này làm cho nó dễ dàng hơn rất nhiều để ẩn mục oe hoặc tạo kiểu khác bằng cách sử dụng css.
Brian Peat

Câu trả lời:


5

Những bước nào bạn sẽ thực hiện để đảm bảo rằng giao diện hoạt động đồng bộ với Joomla và các mẫu khác?

Không có cách nào để biết cái gì sẽ và cái gì sẽ không được hỗ trợ trong một mẫu để lời khuyên của tôi là không nên dựa vào mẫu để tạo kiểu cho thành phần của bạn. Không thể đảm bảo giao diện, mà cuối cùng nó được quyết định bởi mẫu.

Có ba cách tiếp cận có thể; 1) Không làm gì cả, 2) Hy vọng rằng mẫu sẽ hỗ trợ cú pháp BS2 hoặc BS3 và chọn một trong số đó, hoặc 3) bao gồm css của riêng bạn.

Sử dụng các phần tử html chính xác cho công việc sẽ có nghĩa là mẫu xử lý hầu hết kiểu dáng của bạn (tùy chọn 1). Đối với bất cứ điều gì khác, sử dụng một cách tiếp cận đặt tên lớp logic cho các thành phần thành phần của bạn, tuân theo các tiêu chuẩn mã hóa Joomla cho htmlcss và bao gồm css của riêng bạn với thành phần của bạn. Nếu bạn làm điều này xin vui lòng cung cấp một công tắc để vô hiệu hóa nó.

Khi tôi phát triển mẫu, tôi tạo kiểu cho bất kỳ thành phần nào tôi sử dụng, tôi không cần cũng không muốn kiểu thành phần mặc dù tôi đánh giá cao một số có thể. Cách tốt nhất là cung cấp các tùy chọn đơn giản trong cấu hình tiện ích mở rộng của bạn; Tải css? có / không, tải js? có không. Không, hãy đảm bảo rằng chúng ít nhất được tải từ tệp xem để chúng có thể bị ghi đè mà không hack phần mở rộng của bạn.


Cảm ơn, đây là một câu trả lời hay nhưng bạn có thể chỉnh sửa câu trả lời của mình và giải thích một chút về "công tắc" không, bạn có đang đề cập đến một ghi đè không? Nếu một thành phần có CSS, tôi nghĩ rằng nó sẽ bị ghi đè bằng cách ghi đè.
3804927

4

Hiện nay, không có tiêu chuẩn như vậy. Điều gần nhất thực sự là các lớp Bootstrap.

Những gì tôi thường làm là đảm bảo nó hoạt động trong Protostar và hy vọng điều tốt nhất.

Đã từng có một loại tiêu chuẩn nhưng hỗ trợ cho nó thấp và tài liệu rất tệ. Về cơ bản, nó chỉ là một danh sách các id và các lớp được sử dụng bởi core.


4

Tôi ước có một giải pháp cho vấn đề này nhưng tiếc là không có. Sẽ thật tuyệt nếu tất cả chúng ta có thể phát triển các tiện ích mở rộng tích hợp với tất cả các mẫu ngoài kia.

Bạn chỉ đơn giản là sử dụng tốt nhất các lớp Bootstrap và nếu kiểu không tích hợp tốt, thì người dùng chỉ cần tạo Mẫu ghi đè cho thành phần của bạn.

Chỉ cần chắc chắn để làm cho mọi thứ năng động nhất có thể.

Bạn có thể nhận thấy nếu bạn từng xem mã mô-đun của bên thứ 3, nhiều người trong số họ đặt đánh dấu HTML vào mod_modulename.php , có nghĩa là người dùng không thể ghi đè chế độ xem và do đó phải thực hiện hack lõi để tạo kiểu mô-đun theo những gì họ cần.

Đây là lý do tại sao tất cả các đánh dấu phải luôn luôn được đặt trong tập tin xem.

Hi vọng điêu nay co ich


Điều này cũng cung cấp phương tiện cho các nhà cung cấp mẫu để bao gồm kiểu thay thế cho thành phần của bạn nếu họ viết mã, vì vậy lời khuyên rất tốt về nơi đặt đánh dấu!
David Fritsch
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.