如何使用HTML和CSS建立奧運會標誌?


本文的任務是僅使用HTMLCSS建立一個奧運會標誌。

“奧運標誌”由五個圓圈組成(五個不同的顏色,例如藍色、黑色、紅色、黃色和綠色),它們以相同的尺寸相互交織。這五個彩色環代表世界上的五個有人居住的大洲:非洲、美洲、亞洲、歐洲和大洋洲。

  • 設定標誌容器 − 我們首先建立一個class名為Olympic-logo的<div>元素。這作為奧運標誌的容器。我們設定其寬度、高度、背景顏色、位置和邊距以實現所需的佈局。

  • 建立單個圓圈 − 在標誌容器內,我們建立五個class名為circle的<div>元素。每個元素代表奧運五環中的一個。我們定義它們的寬度、高度和border-radius,使它們看起來像完美的圓圈。邊框顏色使用諸如.blue、.black、.red、.yellow和.green之類的類來設定,這些類為每個圓圈應用不同的邊框顏色。

  • 圓圈的交織 − 為了使環狀交織,我們使用四個class名為chain的附加<div>元素。這些元素充當連線環的補丁。我們使用CSS屬性設定它們的寬度、高度和位置。border-color、border-style和border-width屬性建立交錯效果。::before偽元素用於透過設定其content、width、height、border和border-radius屬性向補丁新增圓形。

  • 環和補丁的位置 − 我們使用CSS定位屬性,例如position: absolute,來精確地定位標誌容器內的圓圈和補丁。top和left屬性針對每個元素進行調整以實現正確的放置。

  • 樣式和顏色 − 我們為每個圓圈使用適當的邊框顏色來表示奧運五環。blue、black、red、yellow和green類定義其各自圓圈的邊框顏色。

透過遵循這種方法並使用提供的CSS屬性、選擇器和HTML結構,程式碼建立了一個帶有相互交織的環的奧運標誌,類似於原始標誌。

示例

以下示例使用上述方法生成奧運標誌:

<!DOCTYPE html>
<html>
<head>
   <title>How to create Olympic symbol using HTML and CSS</title>
   <style>
      /* Common styling for the logo container */
      .olympic-logo {
         width: 380px;
         height: 175px;
         font-size: 10px;
         background-color: white;
         position: relative;
         margin: 50px auto;
      }
      /* Individual circles */
      .circle {
         width: 100px;
         height: 100px;
         border-radius: 50%;
         position: absolute;
      }
      .blue {
         border: 10px solid blue;
      }
      .black {
         border: 10px solid black;
         left: 130px;
      }
      .red {
         border: 10px solid red;
         left: 260px;
      }
      .yellow {
         border: 10px solid yellow;
         top: 55px;
         left: 65px;
      }
      .green {
         border: 10px solid green;
         top: 55px;
         left: 195px;
      }
      /* Intertwining the circles */
      .chain {
         width: 20px;
         height: 20px;
         position: absolute;
         overflow: hidden;
         border-color: transparent;
         border-style: solid;
         border-width: 50px 0 50px 100px;
      }
      .chain:before {
         content: "";
         width: 100px;
         height: 100px;
         position: absolute;
         top: -50px;
         left: -99.9px;
         border: 10px solid;
         border-radius: 50%;
      }
      .patch1:before {
         border-color: blue;
      }
      .patch2 {
         left: 130px;
      }
      .patch3 {
         left: 130px;
         transform: rotate(100deg);
      }
      .patch4 {
         left: 260px;
         transform: rotate(100deg);
      }
      .patch4:before {
         border-color: red;
      }
      .patch5:before {
         border-color: green;
      }
   </style>
</head>
<body>
   <!-- Logo container -->
   <div class="olympic-logo">
      <!-- Circles -->
      <div class="circle blue"></div>
      <div class="circle black"></div>
      <div class="circle red"></div>
      <div class="circle yellow"></div>
      <div class="circle green"></div>
      <!-- Intertwining patches -->
      <div class="chain patch1"></div>
      <div class="chain patch2"></div>
      <div class="chain patch3"></div>
      <div class="chain patch4"></div>
   </div>
</body>
</html>

更新於:2023年8月31日

858 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.