Tôi không biết tại sao, nhưng Chế độ xem không thêm tên lớp CSS "có thể đọc được" (ví dụ như tên máy của chế độ xem) vào các khối mà nó tạo ( nó chỉ thêm các lớp của nó vào phần "nội dung" được tạo khi thêm các lớp vào phần " lớp CSS " trong trình chỉnh sửa chế độ xem (xem ảnh chụp màn hình bên dưới!)).
Nó chỉ thêm các lớp CSS thông thường block block-views
và có thể contextual-links-region
vào các khối và tạo một id duy nhất (không phải lớp) như thế này: block-views-3d8f7966168beeec655c8ead69336789
(vì delta của nó là mã băm được tạo này).
Không có nghĩa gì khi viết các quy tắc CSS cho các lớp và id này (như .block-views-3d8f7966168beeec655c8ead69336789 { /* ... */ }
), bởi vì các lớp / id này có thể thay đổi khi thay đổi khối Lượt xem.
Làm cách nào tôi có thể thêm một số lớp CSS tùy chỉnh khi triển khai hook_block_view_alter()
, nếu tôi thậm chí không thể xác định các khối này do hàm băm được tạo?
Tôi không muốn sử dụng Lớp khối , vì tôi cảm thấy nó quá mức khi chỉ thêm một số lớp vào một hoặc hai khối do Lượt xem (BTW Tôi đã kiểm tra mô-đun và tôi cảm thấy SELECT css_class, module, delta FROM {block_class}
truy vấn block_class_preprocess_block()
giống như quá mức, vì nó kiểm tra TẤT CẢ đã thêm các lớp, ngay cả khi khối bị ẩn ...).
Vì vậy, tôi muốn giải quyết nó từ mô-đun của riêng tôi.
BIÊN TẬP
Một ví dụ: