partie 6

HTML et CSS avancé

Les ancres

→ pour la navigation intra-page

<a href="#section1">
<a href="#section2">

<!-- ... -->

<div id="section1">
</div>

<!-- ... -->

<div id="section2">
</div>

Ouvrir un lien dans un nouvel onglet

<a href="https://site-externe.com" target="_blank">

Lien email

→ pour ouvrir l'application mail par défaut

<a href="mailto:example@example.com">

Les Pseudo-classes CSS

→ permet de modifier le style d'un élément en fonction de son état

/* le style suivant ne sera appliqué que lorsqu'un lien sera survolé */
a:hover {
	font-weight: bold;
}
/* cible une image lorsque son parent est survolé */
div:hover a {
	border: 1px solid black;
}
/* cible tous les paragraphes pairs (1 liens sur 2) */
p:nth-child(odd) {
	background-color: light-grey;
}

Transitions CSS

→ Transition fluides lors du changement d'état d'un élément

/* Transition simple sur le survol d'un élément */
.button {
  background-color: blue;
  transition: background-color 0.5s ease;
}

.button:hover {
  background-color: red;
}

/* Transition multiple (couleur et transformation) */
.icon {
  color: black;
  transform: scale(1);
  transition: color 0.3s ease, transform 0.3s ease;
}

.icon:hover {
  color: green;
  transform: scale(1.2);
}

Media Queries

→ Pour adapter son design à différentes tailles d'écran

/* Style de base pour mobile */
.container {
  background-color: lightblue;
}

/* Changement de style pour les écrans > 1280px */
@media (min-width: 1280px) {
  .container {
    background-color: coral;
  }
}

/* Changement de style pour les écrans < 600px */
@media (max-width: 600px) {
  .container {
    background-color: pink;
  }
}

Curseur Custom

body {
  cursor: url('path-to-cursor-image.png'), auto;
}
img {
	cursor: pointer;
}

Rotation

.rotate {
  transition: transform 0.3s ease;
}

.rotate:hover {
  transform: rotate(45deg);
}

Filtres

→ Application de filtres visuels aux éléments

.blur {
  filter: blur(5px);
}

.brightness {
  filter: brightness(150%);
}

iFrame

→ Intégration de contenu externe

<iframe src="https://www.example.com" width="300" height="200"></iframe>

Animation CSS

→ Création d'animations clés avec CSS

@keyframes example {
  from {background-color: red;}
  to {background-color: yellow;}
}

.animated-element {
  width: 100px;
  height: 100px;
  background-color: red;
  animation-name: example;
  animation-duration: 4s;
}