Utilize o componente Table para organizar e exibir dados estruturados em linhas e colunas. Este componente é essencial para apresentar grandes volumes de informações de forma clara e acessível, facilitando a comparação, análise e gestão dos dados.
Organiza dados em uma matriz de linhas e colunas, proporcionando uma visualização ordenada e fácil de entender.
Pode ser utilizado para diversos tipos de informações, como estatísticas, listas de itens, relatórios financeiros, entre outros.
Pode incluir funcionalidades adicionais como ordenação, filtragem, paginação e edição direta de dados.
Incorpore o componente Tabela sempre que precisar apresentar dados estruturados de maneira organizada e eficiente, melhorando a capacidade dos utilizadores de analisar e interagir com as informações.
As colunas que possuam valores numéricos é alinhada à direita e acrescentamos a classe .numeric ao header da coluna.
As colunas que servirão de ordenação de dados acrescentamos a classe .sortable ao header da coluna. Caso queira por defeito ordenar alguma coluna adicione as classes .asc ou .desc ao header da tabela.
Para adicionar o componente da paginação a uma tabela basta identificar na paginação o ID da tabela com o atributo data-element-id="ID-DA-TABELA".
No exemplo abaixo, em modo responsive, a tabela passa para modo vertical. Para isso é acrescentado o atributo data-header="Nome-do-header" em cada célula da tabela para identificar qual a coluna a que se refere, e é acrescentado também a classe .responsive-vertical à tabela.
|
Header 2 | Header 3 | Header 4 | Header 5 | Header 6 | Header 7 |
---|---|---|---|---|---|---|
|
Lorem ipsum | Lorem ipsum | 8.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 75.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 15.80€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 100.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 0.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 2.00€ | Lorem ipsum | Lorem ipsum |
<div class="gra-table-wrapper">
<table class="gra-table responsive-vertical" id="graTable">
<thead>
<tr>
<th class="sortable">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Header 1
</label>
</div>
</th>
<th>Header 2</th>
<th>Header 3</th>
<th class="sortable numeric asc">Header 4</th>
<th>Header 5</th>
<th>Header 6</th>
<th>Header 7</th>
</tr>
</thead>
<tbody>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum a
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-message"></i></span></td>
<td data-header="Header 4" class="numericValue">8.00€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary danger">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-phone"></i></span></td>
<td data-header="Header 4" class="numericValue">75.00€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary success">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum b
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-file"></i></span></td>
<td data-header="Header 4" class="numericValue">15.80€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary alert">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-pin"></i></span></td>
<td data-header="Header 4" class="numericValue">100.00€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary info">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-facebook"></i></span></td>
<td data-header="Header 4" class="numericValue">0.00€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary danger">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td data-header="Header 1">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td data-header="Header 2">Lorem ipsum</td>
<td data-header="Header 3"><span class="withIcon">Lorem ipsum <i class="icon-files"></i></span></td>
<td data-header="Header 4" class="numericValue">2.00€</td>
<td data-header="Header 5"><a href="#" class="gra-link">Lorem ipsum</a></td>
<td data-header="Header 6"><span class="gra-tag primary success">Lorem ipsum</span></td>
<td data-header="Header 7" class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
</tbody>
</table>
</div>
<div class="gra-pagination" data-items-per-page="4" data-total-items="" data-element-id="graTable" data-is-external-content="false">
<div class="results">
<span class="fromIndex">1</span> de <span class="showRows">10</span> dos <span class="totalRows"></span> resultados
</div>
<div class="resultsMobile">
<span class="fromIndex">1</span> de <span class="showRows">10</span> dos <span class="totalRows"></span>
</div>
<div class="navigation">
<button class="prev icon icon-secondary"><i class="icon-chevron-left iconLeft"></i></button>
<div class="page-numbers"></div>
<button class="next icon icon-secondary"><i class="icon-chevron-right iconRight"></i></button>
</div>
</div>
No exemplo abaixo, em modo responsive, a tabela mantém-se igual, mas com scroll horizontal.
|
Header 2 | Header 3 | Header 4 | Header 5 | Header 6 | Header 7 |
---|---|---|---|---|---|---|
|
Lorem ipsum | Lorem ipsum | 8.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 75.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 15.80€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 100.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 0.00€ | Lorem ipsum | Lorem ipsum | |
|
Lorem ipsum | Lorem ipsum | 2.00€ | Lorem ipsum | Lorem ipsum |
<div class="gra-table-wrapper">
<table class="gra-table" id="graTable2">
<thead>
<tr>
<th class="sortable">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Header 1
</label>
</div>
</th>
<th>Header 2</th>
<th>Header 3</th>
<th class="sortable numeric">Header 4</th>
<th>Header 5</th>
<th>Header 6</th>
<th>Header 7</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum a
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-message"></i></span></td>
<td class="numericValue">8.00€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary danger">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-phone"></i></span></td>
<td class="numericValue">75.00€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary success">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum b
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-file"></i></span></td>
<td class="numericValue">15.80€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary alert">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-pin"></i></span></td>
<td class="numericValue">100.00€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary info">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-facebook"></i></span></td>
<td class="numericValue">0.00€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary danger">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
<tr>
<td>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
Lorem ipsum
</label>
</div>
</td>
<td>Lorem ipsum</td>
<td><span class="withIcon">Lorem ipsum <i class="icon-files"></i></span></td>
<td class="numericValue">2.00€</td>
<td><a href="#" class="gra-link">Lorem ipsum</a></td>
<td><span class="gra-tag primary success">Lorem ipsum</span></td>
<td class="options"><a class="gra-link" href="#"><i class="icon-eye"></i></a><a class="gra-link" href="#"><i class="icon-edit"></i></a><a class="gra-link" href="#"><i class="icon-trash"></i></a></td>
</tr>
</tbody>
</table>
</div>
<div class="gra-pagination" data-items-per-page="4" data-total-items="" data-element-id="graTable2" data-is-external-content="false">
<div class="results">
<span class="fromIndex">1</span> de <span class="showRows">10</span> dos <span class="totalRows"></span> resultados
</div>
<div class="resultsMobile">
<span class="fromIndex">1</span> de <span class="showRows">10</span> dos <span class="totalRows"></span>
</div>
<div class="navigation">
<button class="prev icon icon-secondary"><i class="icon-chevron-left iconLeft"></i></button>
<div class="page-numbers"></div>
<button class="next icon icon-secondary"><i class="icon-chevron-right iconRight"></i></button>
</div>
</div>