Heim  >  Artikel  >  Web-Frontend  >  Moderne CSS-Karten

Moderne CSS-Karten

王林
王林nach vorne
2023-08-23 13:25:07965Durchsuche

Moderne CSS-Karten

Heutzutage ist es sehr wichtig, Karten auf der Website zu erstellen, um verschiedene Daten auf der Website anzuzeigen. Auf der Homepage der TutorialsPoint-Website finden Sie beispielsweise verschiedene Kurse, die in einem Kartenformat präsentiert werden. Wenn Sie auf die Karte klicken, werden Sie auf die spezifische Seite für diesen Kurs weitergeleitet.

Wenn Sie außerdem einen E-Commerce-Shop wie Amazon oder Flipkart besuchen, werden dort die Produkte im Kartenformat angezeigt. Der Hauptvorteil der Kartenerstellung besteht darin, dass wir auf dem Bild kurze Informationen zum Produkt anzeigen und auf der Produktseite vollständige Informationen bereitstellen können.

In diesem Tutorial lernen wir, verschiedene Karten nur mit HTML und CSS zu erstellen.

Beispiel 1 (Basis-CSS-Karten)

Im folgenden Beispiel haben wir das div-Element „card“ erstellt, das das einzelne Bild enthält, und das div-Element „card-content“ enthält die Textinformationen.

In CSS legen wir die festen Abmessungen für das Kartenelement fest. Außerdem haben wir Stile wie Hintergrundfarbe, Rahmenradius und Rand usw. festgelegt. Außerdem wenden wir den Box-Shadow-Effekt auf die Karte an, wenn Benutzer mit der Maus darüber fahren Karte.

Außerdem haben wir die Abmessungen des Bildes festgelegt und den Randradius für die oberen Ecken festgelegt. Außerdem legen wir die Schriftgröße des Textinhalts fest. In der Ausgabe können Benutzer die resultierende Karte beobachten.

<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>
Die chinesische Übersetzung von

Beispiel 2

lautet:

Beispiel 2

Wir haben eine Karte erstellt, die dem ersten Beispiel im folgenden Beispiel ähnelt. Hier legen wir ein Hintergrundbild für das div-Element „card-image“ fest. Gleichzeitig stellen wir das Bild ein, indem wir zufällige Bilder von der „Picsum“-Website abrufen. Auf dieser Karte haben wir nicht wie im ersten Beispiel den Ankertag „Jetzt beitreten“ hinzugefügt.

<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>

Beispiel 3

Im folgenden Beispiel haben wir der Karte einen Hover-Effekt hinzugefügt, um zusätzliche Informationen anzuzeigen.

Hier haben wir zuerst den Kartencontainer erstellt, um eine normale Karte zu erstellen, und ihn mit dem CSS mit „position: relative“ gestaltet. Wir haben die div-Elemente „card-first“ und „card-second“ innerhalb des Kartencontainers hinzugefügt. Das div-Element „card-first“ enthält die Informationen auf der Karte, und das div-Element „card-second“ enthält die Informationen, die angezeigt werden, wenn Benutzer mit der Maus über die Karte fahren.

Außerdem haben wir die Abmessungen für das „card-first“-Div-Element im CSS festgelegt und die CSS-Eigenschaft „transform: Translate(100%)“ zum Ausblenden verwendet der zweite Teil. Wenn Benutzer mit der Maus über das Kartenelement fahren, verwenden wir die CSS-Eigenschaft „transform: TranslateX(-100%)“, um den zweiten Teil der Karte anzuzeigen.

<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>

Beispiel 4

Im folgenden Beispiel haben wir ein div-Element mit dem Namen „parent“ erstellt. Danach haben wir mehrere Kartenelemente mit Bildern und Kartenbeschreibungen hinzugefügt.

In CSS verwenden wir die Funktion „clamp()“, um die Breite der Karte festzulegen. Die Funktion „clamp()“ akzeptiert drei Parameter. Der erste ist der Minimalwert, der zweite der Prozentwert und der dritte der Maximalwert. Wenn in unserem Beispiel 20 % der Bildschirmgröße zwischen 300 und 500 Pixel liegen, beträgt die Kartenbreite 20 %. Andernfalls sind es 300 Pixel oder 500 Pixel.

Zusätzlich haben wir den „übergeordneten“ Container auf Flexbox gesetzt, um alle Karten korrekt anzuzeigen.

<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>

Benutzer haben gelernt, moderne Karten mit HTML und CSS zu erstellen. In den ersten beiden Beispielen haben wir die Karten mit dem Hover-Effekt erstellt Behandeln Sie die Kartengröße entsprechend den Bildschirmabmessungen des Geräts.

Das obige ist der detaillierte Inhalt vonModerne CSS-Karten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen