/ / jak dodać dwa różne style jqgrid - jquery, jqgrid

jak dodać dwa różne style jqgrid - jquery, jqgrid

Mam tutaj moją stronę i dwie siatki ... pierwsza siatka ma ten styl dla nagłówka kolumny

<style type="text/css">
.ui-jqgrid table.ui-jqgrid-htable {
height:60px;
}
</style>

To jest w tabeli 1, a w tabeli 2 mam inną siatkę, ale bez stylu

podczas ładowania strony, druga siatka otrzymuje styl pierwszej siatki, a rozmiar nagłówka kolumny wynosi 60

Jaki jest problem?

pd: Przepraszam za mój angielski

Odpowiedzi:

0 dla odpowiedzi № 1

Styl CSS, którego używasz, jest stosowany w obu siatkach, ponieważ używasz klasy ui-jqgrid i ui-jqgrid-htable w regule CSS. Element z klasami istnieje w obu siatkach. Jeśli chcesz zastosować niektóre ustawienia CSS na jednej siatce, możesz użyć np. Identyfikatorów. Jeśli dwie siatki, których używasz, mają identyfikator ids table1 i table2 na przykład (używasz <table id="table1"></table> dla pierwszej siatki i <table id="table2"></table> dla drugiego), a następnie zewnętrzny div stworzony przez jqGrid (który ma ui-jqgrid class) będzie mieć id = "gbox_table1" i id = "gbox_table2" (identyfikator zewnętrznego div zostanie zbudowany na podstawie identyfikatora tabeli poprzez dodanie przedrostka "gbox_"). Więc musisz się zgłosić height:60px tylko dla pierwszej siatki (z id = "table1"), powinieneś zmienić regułę CSS na

#gbox_table1 table.ui-jqgrid-htable {
height:60px;
}

0 dla odpowiedzi nr 2

<style> elementy powinny zostać dodane w <head> element dokumentu HTML, a styl odnosi się do całego dokumentu. Jeśli typem stylu jest CSS, to zawartość <style> jest interpretowany zgodnie z regułami porównywania wzorców CSS. W twoim przypadku, jeśli wysokość zostanie zastosowana do wszystkich <table> element, który ma ui-jqgrid-htable class, i to dziecko dowolnego typu elementu z klasą ui-jqgrid.

Jeśli chcesz, aby styl był stosowany tylko do jednego elementu i jego elementów podrzędnych, użyj a style atrybut zamiast a <style> element.