Đây là một bài viết cũ, nhưng tôi muốn kết hợp với một vài giải pháp.
Đầu tiên, và điều này có thể không trả lời trực tiếp câu hỏi của bạn, nhưng bạn có thể thay đổi các bộ chọn CSS bạn đang sử dụng để nhắm mục tiêu bảng.
Vì vậy, thay vì sử dụng table.yourclass
bạn có thể sử dụng .yourclass table
. Điều này có thể được thực hiện bằng cách đặt một lớp tùy chỉnh cho toàn bộ khung nhìn trong phần nâng cao .
Tất nhiên, điều này sẽ không hoạt động nếu bạn đang cố gắng thêm các lớp trực tiếp vào phần tử như bạn có thể cần phải làm với Bootstrap, tức là table.table.table-striped
.
Giải pháp thứ hai sẽ cho phép bạn thêm các lớp giống nhau vào tất cả các bảng của bạn. Trong template.php
tệp của bạn , thêm vào như sau:
function THEME_preprocess_views_view_table(&$vars)
{
$vars['classes_array'][] = 'table table-striped';
}
Nếu bạn cần nhắm mục tiêu một bảng cụ thể, trước tiên bạn cũng có thể kiểm tra $vars
biến để tìm tên của chế độ xem và hiển thị được gọi và chỉ áp dụng các lớp của bạn cho các mục bạn muốn nhắm mục tiêu. Tôi đã không kiểm tra, nhưng nó có thể được tìm thấy trong một cái gì đó như $vars['view']->current_display
.
Cuối cùng, điều đáng chú ý là Lượt xem thực sự hỗ trợ các lớp tùy chỉnh trên bảng. Các biến được gọi trong các tệp mẫu, không có tùy chọn nào cho nó trong GUI xem. Đây là một sự giám sát theo ý kiến của tôi, nhưng các nhà phát triển của mô-đun dường như không có kế hoạch sửa chữa nó. Điều đó nói rằng, một bản vá cho nó không tồn tại ( liên kết trực tiếp ).