Maison  >  Article  >  interface Web  >  Cartes CSS modernes

Cartes CSS modernes

王林
王林avant
2023-08-23 13:25:07965parcourir

Cartes CSS modernes

De nos jours, il est très important de créer des cartes sur le site Internet pour afficher diverses données sur le site Internet. Par exemple, sur la page d'accueil du site TutorialsPoint, vous trouverez différents cours présentés sous forme de carte, et lorsque vous cliquerez sur la carte, elle vous redirigera vers la page spécifique à ce cours.

De plus, si vous visitez une boutique de commerce électronique comme Amazon ou Flipkart, ils affichent les produits sous forme de carte. Le principal avantage de la création de cartes est que nous pouvons afficher de brèves informations sur le produit sur l'image et fournir des informations complètes sur la page du produit.

Dans ce tutoriel, nous apprendrons à créer différentes cartes en utilisant uniquement HTML et CSS.

Exemple 1 (cartes CSS de base)

Dans l'exemple ci-dessous, nous avons créé l'élément div « card » contenant l'image unique et l'élément div « card-content » L'élément div « card-content » contient les informations textuelles.

En CSS, nous définissons les dimensions fixes de l'élément de la carte. Nous avons également donné des styles tels que la couleur d'arrière-plan, le rayon de la bordure et la bordure, etc. De plus, nous appliquons l'effet d'ombre de boîte sur la carte lorsque les utilisateurs survolent le carte.

De plus, nous avons corrigé les dimensions de l'image et défini le rayon de bordure pour les coins supérieurs. Nous avons également défini la taille de la police du contenu du texte. Dans la sortie, les utilisateurs peuvent observer la carte résultante.

<html>
<head>
   <style>
      .card {
         display: flex;
         flex-direction: column;
         border-radius: 5px;
         box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
         transition: box-shadow 0.3s ease-in-out;
         width: 18rem;
         background-color: #fff;
      }
      .card:hover { box-shadow: 0 8px 16px rgba(0, 0, 0, 0.6);}
      .card>img {
         border-radius: 5px 5px 0 0;
         height: 150px;
         width: 100%;
         object-fit: contain;
      }
      .card-content { padding: 20px;}
      .card h3 { font-size: 1.4rem; margin-top: 0;}
      .card p { font-size: 1rem; margin-bottom: 10px;
      }
      .card a {
         padding: 10px 20px;
         background-color: #222;
         border-radius: 10px;
         color: white;
         text-align: center;
         display: inline-block;
         text-decoration: none;
         transition: background-color 0.4s ease-in-out;
      }
      .card a:hover { background-color: #4b4a4a;}
   </style>
</head>
<body>
   <h2> Creating the <i> basic cards </i> using the CSS </h2>
   <div class = "card">
      <img src = "https://www.tutorialspoint.com/static/images/logo.png?v2" alt = "Logo">
      <div class = "card-content">
         <h3> Python </h3>
         <p> Python course by Shubham Vora </p>
         <a href = "#"> Join now </a>
      </div>
   </div>
</body>
</html>
La traduction chinoise de

Exemple 2

est :

Exemple 2

Nous avons créé une carte similaire au premier exemple de l'exemple ci-dessous. Ici, nous définissons une image d'arrière-plan pour l'élément div "card-image". En même temps, nous définissons l'image en obtenant des images aléatoires du site Web "Picsum". Dans cette carte, nous n'avons pas ajouté de balise d'ancrage « Rejoindre maintenant » comme nous l'avons fait dans le premier exemple.

<html>
<head>
   <style>
      .card {
         display: flex;
         flex-direction: column;
         width: 20rem;
         background-color: white;
         border-radius: 10px;
         box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
      }
      .card-image {
         height: 200px;
         background-image: url("https://picsum.photos/300/200");
         background-size: cover;
         border-radius: 10px 10px 0 0;
      }
      .card-content { padding: 20px;}
      .card-title {
         font-size: 1.5rem;
         font-weight: bold;
         margin: 0 0 10px 0;
      }
      .card-text { font-size: 1rem; margin: 0; }
   </style>
</head>
<body>
   <h2> Creating the <i> basic cards </i> using the CSS. </h2>
   <div class = "card">
      <div class = "card-image"> </div>
      <div class = "card-content">
         <h2 class = "card-title"> Random Image</h2>
         <p class = "card-text"> This is an random image description. </p>
      </div>
   </div>
</body>
</html>

Exemple 3

Dans l'exemple ci-dessous, nous avons ajouté un effet de survol à la carte pour afficher des informations supplémentaires.

Ici, nous avons d'abord créé le conteneur de cartes pour créer une carte normale et l'avons stylisé en utilisant le CSS avec « position : relative ». Nous avons ajouté les éléments div « card-first » et « card-second » à l'intérieur du conteneur de cartes. L'élément div « card-first » contient les informations sur la carte, et l'élément div « card-second » contient les informations à afficher chaque fois que les utilisateurs survolent la carte.

De plus, nous avons défini les dimensions de l'élément div 'card-first' du CSS. Nous avons également défini les dimensions de l'élément div 'card-second' dans le CSS et avons utilisé la propriété CSS 'transform: translation(100%)' pour le masquer. la deuxième partie. Lorsque les utilisateurs survolent l'élément de la carte, nous utilisons la propriété CSS 'transform: translateX(-100%)' pour afficher la deuxième partie de la carte.

<html>
<head>
   <style>
      .card {
         position: relative;
         width: 300px;
         height: 200px;
         background-color: rgb(64, 64, 247);
         color: white;
         border-radius: 10px;
         box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.4);
         overflow: hidden;
      }
      .card-first {
         position: absolute;
         width: 100%;
         height: 100%;
         padding: 20px;
         font-size: 1.7rem;
         transition: transform 0.5s ease-in-out;
      }
      .card-second {
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
         padding: 20px;
         transform: translateX(100%);
         transition: transform 0.5s ease-in-out;
      }
      .card:hover .card-first { transform: translateX(-100%);}
      .card:hover .card-second { transform: translateX(0%); }
   </style>
</head>
<body>
   <h2> Creating the <i> hover effect on the card </i> to show additional information. </h2>
   <div class = "card">
      <div class = "card-first">
         <h3> Samsung s22 </h3>
         <p> 1,01,000 INR </p>
      </div>
      <div class = "card-second">
         <p> 6.4 inch display </p>
         <p> 8 GB RAM </p>
         <p> 128 GB Storage </p>
         <p> 64 MP Camera </p>
      </div>
   </div>
</body>
</html>

Exemple 4

Dans l'exemple ci-dessous, nous avons créé un élément div nommé 'parent'. Après cela, nous avons ajouté plusieurs éléments de carte contenant des images et des descriptions de cartes.

En CSS, nous utilisons la fonction clamp() pour définir la largeur de la carte. La fonction clamp() accepte trois paramètres. La première est la valeur minimale, la seconde est la valeur en pourcentage et la troisième est la valeur maximale. Dans notre exemple, si 20 % de la taille de l'écran est comprise entre 300 et 500 pixels, la largeur de la carte sera de 20 %. Sinon, ce sera 300 pixels ou 500 pixels.

De plus, nous définissons le conteneur "parent" sur flexbox pour afficher correctement toutes les cartes.

<html>
<head>
   <style>
      .parent {
         padding: 30px 5%;
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
      }
      .card {
         position: relative;
         margin: 20px;
         width: clamp(230px, 20%, 500px);
         height: 250px;
         background-color: green;
         color: white;
         border-radius: 10px;
         transition: all 0.3s ease;
      }
      .card img {
         width: 100%;
         height: 150px;
         border-radius: 10px 10px 0 0;
         object-fit: cover;
      }
      .card-text {
         padding: 20px;
         text-align: center;
         position: absolute;
         bottom: 0;
         left: 0;
         right: 0;
         transition: all 0.3s ease;
      }
      .card-text h3 { font-size: 24px; margin-bottom: 10px;}
      .card-text p { font-size: 16px; margin-bottom: 0;}
   </style>
</head>
<body>
   <h3> Creating the <i> card with clamp() function </i> to manage card dimensions according to the screen dimensions </h3>
   <div class = "parent">
      <div class = "card">
         <img src = "https://picsum.photos/300/200" alt = "Random image">
         <div class = "card-text">
            <h2> Card 1 </h2>
            <p> This is a card description. </p>
         </div>
      </div>
      <div class = "card">
         <img src = "https://picsum.photos/300/200" alt = "Random image">
         <div class = "card-text">
            <h2> Card 2 </h2>
            <p> This is a card description. </p>
         </div>
      </div>
   </div>
</body>
</html>

Les utilisateurs ont appris à créer des cartes modernes en utilisant HTML et CSS. Dans les deux premiers exemples, nous avons créé les cartes de base ; dans le troisième exemple, nous avons créé les cartes avec l'effet de survol. Nous avons également appris à utiliser la fonction clamp() pour. gérez la taille de la carte en fonction des dimensions de l'écran de l'appareil.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer