Add a table in Webflow

Tools:

Introduction

Adding a table in Webflow is not possible natively, you have to go through custom code or third-party solutions like that of Finsweet for example.

The problem is that the majority of solutions do not allow you to add tables to your CMS.

That is why the Webflow agency Gemeos provides you with an HTML/CSS template that you can adapt to your needs.

Tutorial

Add this CSS/HTM code to your page

The CSS

 <style>
/* Style général pour les tableaux, réglant la largeur, l'espacement, etc. */
table {
    width: 100%; /* Largeur du tableau, peut être ajustée en pourcentage ou en pixels */
    margin: 24px 0; /* Espace au-dessus et en dessous du tableau */
    border-collapse: separate; /* Garde les bordures des cellules séparées */
    border-spacing: 0; /* Aucun espace entre les bordures des cellules */
    position: relative; /* Nécessaire pour positionner les éléments pseudo avant et après */
}

/* Bordure externe du tableau, réglant la couleur, l'épaisseur et le style */
table::before {
    content: ""; /* Nécessaire pour créer un élément pseudo */
    position: absolute; /* Positionnement absolu par rapport au tableau */
    top: 0; /* Position en haut du tableau */
    left: 0; /* Position à gauche du tableau */
    right: 0; /* Position à droite du tableau */
    bottom: 0; /* Position en bas du tableau */
    border: 1px solid #EBEBEB; /* Épaisseur, style et couleur de la bordure extérieure */
    border-radius: 12px; /* Rayon de la bordure pour les coins arrondis */
    z-index: -1; /* Place l'élément derrière le contenu du tableau */
}

/* Style des cellules du tableau, réglant le padding, l'alignement du texte, etc. */
th, td {
    padding: 8px 12px; /* Espace à l'intérieur de chaque cellule */
    text-align: left; /* Alignement du texte dans les cellules */
    font-size: 14px; /* Taille de la police dans les cellules */
    min-width: 192px; /* Largeur minimale de chaque cellule */
}

/* Style spécifique pour les en-têtes du tableau */
th {
    font-weight: 600; /* Graisse de la police pour les en-têtes */
}

/* Style spécifique pour les cellules de données */
td {
    vertical-align: top; /* Alignement vertical du contenu dans les cellules */
}

/* Bordures entre les cellules, évite les bordures doublées */
th:not(:last-child), td:not(:last-child) {
    border-right: 1px solid #EBEBEB; /* Bordure à droite de chaque cellule sauf la dernière */
}

/* Bordure en bas de chaque cellule */
th, td {
    border-bottom: 1px solid #EBEBEB; /* Bordure en bas de chaque cellule */
}

/* Suppression de la bordure en bas pour la dernière ligne de cellules */
tr:last-child td {
    border-bottom: none; /* Pas de bordure en bas pour la dernière ligne */
}

/* Conteneur autour du tableau pour gérer le défilement sur les petits écrans */
.tableau-container {
    overflow-x: visible; /* Défilement horizontal si nécessaire */
    width: auto; /* Largeur automatique par défaut */
}

/* Style pour les petits écrans, comme les tablettes et mobiles */
@media (max-width: 768px) {
    .tableau-container {
        overflow-x: scroll; /* Active le défilement horizontal */
        width: 100%;  /* Largeur maximale sur petits écrans */
    }
}
</style>

The HTML code

<!-- Conteneur du tableau pour gérer le débordement et la largeur -->
<div class="tableau-container">
 <!-- Tableau avec trois colonnes -->
 <table>
 <04.-Header line with three column headers -->
 <tr>
 <th>Title 1</th> <!-- Titre de la première colonne -->
 <th>Title 2</th> <!-- Titre de la deuxième colonne -->
 <th>Title 3</th> <!-- Titre de la troisième colonne -->
</tr>
 <!-- Première ligne de données -->
 <tr>
 <td>To provide you with our services...</td> <!-- Données de la première colonne -->
 <td>Execution of a contract...</td> <!-- Données de la deuxième colonne -->
 <td>Your data is kept...</td> <!-- Données de la troisième colonne -->
</tr>
 <!-- Deuxième ligne de données -->
 <tr>
 <td>Fulfill your order...</td> <!-- Données de la première colonne -->
 <td>Execution of a contract...</td> <!-- Données de la deuxième colonne -->
 <td>Personal data is kept...</td> <!-- Données de la troisième colonne -->
</tr>
</table>
</div>

Adjust the code to adapt it to your needs

To adapt this table according to specific needs, you can adjust the following values according to your preferences:

  • Width for the width of the table
  • Margin for spacing around the board
  • edging for border color, thickness, and style
  • Padding for the space inside the cells
  • font-size for the size of text in cells
  • Min-width for minimum cell width

You can also add or remove rows and columns directly in HTML. For border colors and other visual styles, simply change the hexadecimal values (like #EBEBEB) in the CSS.

That is all! Publish and test the result

Author photo
Sandro D.
Updated on
6/7/2024
Growth Marketer, Webflow expert and a jack of all trades. I take care of commercial operations, ensure the smooth running of projects and take care of issues related to marketing (SEO, Tracking, Copywriting, etc.)
Are you stuck with your current site?
Let's talk ?
Welcome
>
Gemeos Academy
>
Add a table in Webflow
These tutorials might interest you

Our tutorials in the same category

See all our tutorials
Illustration traits
We use the best tools

Your site is developed using the best tools and best practices

Gemeos doesn't just offer you a website, but expertise in the best tools to guarantee you the best possible return on your investment.

Figma

To design your custom website and optimize its conversion rate

Webflow

For pixel-perfect, optimized integration of your website

Client-first

Organizing your project to perfection

Wized

To add advanced features to your project

Make

Automate your workflows and save maximum time