CSS - width, height, margin, padding

Pour saisir rapidement les classes les plus utilisées, j'ai réservé des noms très courts

  • la première lettre est le type de propriété CSS : w: width, m: margin, p: padding
  • la deuxième lettre peut avoir 2 sens :
    • indicateur de taille d'écran : s pour small, smartphone et m pour medium, moyen
    • le coté concerné : l: left, t: top, r: right, b: bottom, h: horizontal (left & right), v: vertical (top & bottom)
  • la troisième lettre est le coté en cas de mention d'une taille d'écran.
  • le nombre ou auto indique la valeur ou l'indice de la valeur.

Quelques exemples pour comprendre le principe:

  • w6 : width:6/12=50% → largeur du bloc en pourcentage
  • ws6 → idem mais seulement sur mobile (s)
  • m1 : margin: 10px; → l'indice 1 est défini à 10px dans les variables SCSS
  • mm1 → idem mais seulement sur tablette (m)
  • mst2 : margin-top: 20px → marge top sur mobile (s)
  • psr1 : padding-right:10px → padding de 10px sur mobile (s)
  • mcenter : margin-left & margin-right sur auto pour centrer un bloc

WIDTH - largeur des blocs sur la base d'une grille de 12 colonnes

Syntaxe : w[ecran]largeur en % w[s|m]0|1|2|3|4|5|6|7|8|9|10|11|12|auto|25|50|75|100

Une largeur de zéro est équivalent à un display:none. Exemple: ws0 = invisible sur mobile

avec w4, j'occupe le tiers de l'espace
w3 wm4 ws0. Je disparais sur mobile
w2
wauto, la place restante
<div class="cell-row tc">
  <div class="cell bg-bleuClair w4 pv2">avec w4, j'occupe le tiers de l'espace</div>
  <div class="cell bg-vert w20 wm4 ws0" >w20 wm4 ws0. Je disparait sur mobile</div>
  <div class="cell bg-orange w2">w2</div>
  <div class="cell bg-violet wauto">wauto, la place restante</div>
</div>

Note : par commodité, les classes 25, 50, 75 et 100 indiquent la largeur du bloc en pourcentage.

MARGIN - les marges autour des blocs

Syntaxe : p[ecran][coté][dimension] m[s|m][l|t|r|b|h|v]0|1|2|3|center|left|right

m0
m1
w50 mcenter
mt3 ms0
<div class="bloc tc">
  <div class="w3 float-left bd-orange">
    <div class="m0 bg-orange">m0</div>
  </div>
  <div class="w3 float-left bd-bleuClair">
    <div class="m1 bg-bleuClair">m1</div>
  </div>
  <div class="w3 float-left bd-orange">
    <div class="mcenter w50 bg-orange">w50 mcenter</div>
  </div>
  <div class="w3 float-left bd-bleuClair">
    <div class="mt3 ms0 bg-bleuClair">mt3 ms0</div>
  </div>
</div>

m-child-raz supprime la marge haute du premier enfant et la marge basse du dernier enfant d'un bloc. Cette règle est très pratique dans une boite, pour éviter que les règles des enfants soient prioritaires sur celles du parent.

Titre

Contenu

<div class="bloc bd-bleuClair tc">
  <h2>Titre</h2>
  <p>Contenu</p>
</div>

Titre

Contenu

<div class="bloc m-child-raz bd-bleuClair tc">
  <h2>Titre</h2>
  <p>Contenu</p>
</div>

PADDING - les marges internes aux blocs

Syntaxe : p[ecran][coté][dimension] p[s|m][l|t|r|b|h|v]0|1|2|3

p0 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Iam in altera philosophiae parte. Quo modo? Duo Reges: constructio interrete. Laboro autem non sine causa.
p1 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Iam in altera philosophiae parte. Quo modo? Duo Reges: constructio interrete. Laboro autem non sine causa.
ph3 psh1 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Iam in altera philosophiae parte. Quo modo? Duo Reges: constructio interrete. Laboro autem non sine causa.
pv1 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Iam in altera philosophiae parte. Quo modo? Duo Reges: constructio interrete. Laboro autem non sine causa.
<div class="fg-row fg-gap fg-vtop">
  <div class="fg-c3 fg-cm5 fg-cs6 bd-orange p0"><b>p0</b> ... Laboro autem non sine causa.</div>
  <div class="fg-c3 fg-cm7 fg-cs6 bd-orange p1"><b>p1</b> ...</div>
  <div class="fg-c3 fg-cm6 bd-orange ph3 psh1"><b>ph3 psh1</b> ...</div>
  <div class="fg-c3 fg-cm6 bd-orange pv1"><b>pv1</b> ...</div>
</div>

HEIGHT - une hauteur minimale en pixels

Pour réserver une hauteur minimale en pixels, on dispose d'une classe responsive minh[s|m]0|100|200|400 et hscreen

.minh0
.minh100
.minh200
.minh400
.hscreen
j'occupe la hauteur de la fenêtre du navigateur

Et une hauteur maximale

La même chose pour une hauteur maximale en pixels avec ajout d'un ascenseur maxh[s|m]0|100|200|400

.maxh100

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Tecum optime, deinde etiam cum mediocri amico. Sed quid sentiat, non videtis. Quid est enim aliud esse versutum? Et quidem iure fortasse, sed tamen non gravissimum est testimonium multitudinis.

Expectoque quid ad id, quod quaerebam, respondeas. Te ipsum, dignissimum maioribus tuis, voluptasne induxit, ut adolescentulus eriperes P. Bonum patria: miserum exilium. Philosophi autem in suis lectulis plerumque moriuntur. Fortemne possumus dicere eundem illum Torquatum? Sed ego in hoc resisto; Quis Aristidem non mortuum diligit? Quis non odit sordidos, vanos, leves, futtiles? Nam memini etiam quae nolo, oblivisci non possum quae volo.

Animum autem reliquis rebus ita perfecit, ut corpus; Quis enim est, qui non videat haec esse in natura rerum tria? Ergo ita: non posse honeste vivi, nisi honeste vivatur? Huic mori optimum esse propter desperationem sapientiae, illi propter spem vivere. Etsi qui potest intellegi aut cogitari esse aliquod animal, quod se oderit? Pauca mutat vel plura sane; Nam quibus rebus efficiuntur voluptates, eae non sunt in potestate sapientis. Qui si omnes veri erunt, ut Epicuri ratio docet, tum denique poterit aliquid cognosci et percipi. Sic enim maiores nostri labores non fugiendos tristissimo tamen verbo aerumnas etiam in deo nominaverunt. An vero, inquit, quisquam potest probare, quod perceptfum, quod. Eam si varietatem diceres, intellegerem, ut etiam non dicente te intellego;

Videmusne ut pueri ne verberibus quidem a contemplandis rebus perquirendisque deterreantur? Duo Reges: constructio interrete. Huius, Lyco, oratione locuples, rebus ipsis ielunior. De quibus cupio scire quid sentias. Experiamur igitur, inquit, etsi habet haec Stoicorum ratio difficilius quiddam et obscurius. Et tamen ego a philosopho, si afferat eloquentiam, non asperner, si non habeat, non admodum flagitem. Etenim nec iustitia nec amicitia esse omnino poterunt, nisi ipsae per se expetuntur.