Votre navigateur ne supporte pas cette démonstration
<form>
<div class=form>
<div>
<label for=name>Nom :</label>
<input id=name name=name>
</div>
<div>
<label for=email>Email:</label>
<input id=email name=email type=email>
</div>
<div>
<label for=tel>Téléphone:</label>
<input id=tel name=tel type=tel>
</div>
</div>
</form>
*{box-sizing: border-box}
.form {
display: grid;
grid-template-columns: min-content minmax(30ch,1fr);
gap: 1rem;
}
.form div {
grid-column: span 2;
display: grid;
grid-template-columns: subgrid;
}