App下載

如何用CSS3創(chuàng)建圓角矩形并居中顯示?

迷糊的小七 2024-12-18 18:26:49 瀏覽數(shù) (167)
反饋

在網(wǎng)頁設(shè)計(jì)中,圓角矩形因其美觀和現(xiàn)代感而被廣泛使用,居中顯示元素也是一個(gè)常見的需求。今天,我們將學(xué)習(xí)如何使用CSS3border-radius屬性來創(chuàng)建圓角矩形,并將其居中顯示在頁面上。

用 CSS3 創(chuàng)建并居中顯示圓角矩形

如果你正在學(xué)習(xí)CSS,那么這個(gè)實(shí)例將非常適合你練手。如果想要更生動(dòng)的學(xué)習(xí)CSS,推薦編程獅W3Cschool的HTML + CSS 基礎(chǔ)實(shí)戰(zhàn),它能讓你像玩游戲一樣闖關(guān)中掌握更多的多前端開發(fā)實(shí)用技巧。

??如果你沒有HTML基礎(chǔ)請(qǐng)先學(xué)習(xí)《HTML入門課程(含HTML5)

一、創(chuàng)建圓角矩形

CSS 圓角 border-radius屬性

首先,我們來看如何創(chuàng)建一個(gè)圓角矩形:

.rectangle { <!-- 定義矩形樣式 -->
    width: 400px; <!-- 設(shè)置矩形寬度為400像素 -->
    height: 300px; <!-- 設(shè)置矩形高度為300像素 -->
    background-color: #4CAF50; /* 設(shè)置背景顏色為綠色 */
    border: 2px solid #000; /* 設(shè)置邊框?yàn)?像素的黑色實(shí)線 */
    border-radius: 10px; /* 設(shè)置圓角為10像素 */
}

要使用CSS3創(chuàng)建圓角矩形,你需要使用border-radius屬性。border-radius屬性允許你為元素的四個(gè)角設(shè)置圓角。以下是一些基本的使用方法:

單個(gè)值

如果你為border-radius屬性提供一個(gè)值,那么這個(gè)值將應(yīng)用于所有四個(gè)角:

css

.rectangle {
  border-radius: 10px; /* 所有四個(gè)角都是10px的圓角 */
}

兩個(gè)值

如果你提供兩個(gè)值,第一個(gè)值將應(yīng)用于左上角和右下角,第二個(gè)值將應(yīng)用于右上角和左下角:

css

.rectangle {
  border-radius: 10px 20px; /* 左上角和右下角是10px的圓角,右上角和左下角是20px的圓角 */
}

三個(gè)值

如果你提供三個(gè)值,第一個(gè)值將應(yīng)用于左上角,第二個(gè)值將應(yīng)用于右上角和左下角,第三個(gè)值將應(yīng)用于右下角:

css

.rectangle {
  border-radius: 10px 20px 30px; /* 左上角是10px的圓角,右上角和左下角是20px的圓角,右下角是30px的圓角 */
}

四個(gè)值

如果你提供四個(gè)值,它們將分別應(yīng)用于左上角、右上角、右下角和左下角:

css

.rectangle {
  border-radius: 10px 20px 30px 40px; /* 左上角是10px的圓角,右上角是20px的圓角,右下角是30px的圓角,左下角是40px的圓角 */
}

當(dāng)然你也可以使用編程獅上的在線生成CSS圓角工具來快速一鍵獲取圓角的css代碼

二、居中顯示

要將圓角矩形居中顯示,我們可以使用以下兩種方法之一:

方法1:使用Flexbox

什么是Flexbox

將矩形包裹在一個(gè)容器中,并使用Flexbox來居中它:

<!DOCTYPE html> <!-- 定義文檔類型為HTML5 -->
<html>
<head>
  <meta charset="UTF-8"> <!-- 設(shè)置字符編碼為UTF-8 -->
  <title>居中顯示圓角矩形示例 | 編程獅(w3cschool.cn)</title> <!-- 頁面標(biāo)題 -->
  <style>
    .container { /* 定義容器樣式 */
      display: flex; /* 使用Flexbox布局 */
      justify-content: center; /* 水平居中子元素 */
      align-items: center; /* 垂直居中子元素 */
      height: 100vh; /* 使容器高度占滿整個(gè)視口高度 */
    }
    .rectangle { /* 定義矩形樣式 */
      width: 400px; /* 設(shè)置矩形寬度為400像素 */
      height: 300px; /* 設(shè)置矩形高度為300像素 */
      background-color: #4CAF50; /* 設(shè)置背景顏色為綠色 */
      border: 2px solid #000; /* 設(shè)置邊框?yàn)?像素的黑色實(shí)線 */
      border-radius: 10px; /* 設(shè)置圓角為10像素 */
    }
  </style>
</head>
<body>
  <div class="container"> <!-- 使用容器類 -->
    <div class="rectangle"></div> <!-- 使用矩形類 -->
  </div>
</body>
</html>

在這個(gè)示例中,.container類使用display: flex屬性創(chuàng)建了一個(gè)Flexbox布局,justify-content: centeralign-items: center屬性分別在水平和垂直方向上居中了子元素。這段代碼使用了Flexbox,這是一種現(xiàn)代的布局方式,非常適合于簡(jiǎn)單的居中任務(wù)。

推薦學(xué)習(xí)

方法2:使用絕對(duì)定位

position屬性

如果你不想使用Flexbox,也可以使用絕對(duì)定位來居中元素:

<!DOCTYPE html> <!-- 定義文檔類型為HTML5 -->
<html>
<head>
  <meta charset="UTF-8"> <!-- 設(shè)置字符編碼為UTF-8 -->
  <title>居中顯示圓角矩形示例 | 編程獅(w3cschool.cn)</title> <!-- 頁面標(biāo)題 -->
  <style>
    /* 定義html和body的樣式 */
    html, body {
      height: 100%; /* 設(shè)置高度為視口的100% */
      margin: 0; /* 移除默認(rèn)的外邊距 */
    }


    /* 定義內(nèi)容容器樣式 */
    .body-content {
      position: relative; /* 設(shè)置定位為相對(duì)定位,用于絕對(duì)定位子元素的參考 */
      height: 100%; /* 設(shè)置高度為100% */
    }


    /* 定義矩形樣式 */
    .rectangle {
      position: absolute; /* 設(shè)置定位為絕對(duì)定位 */
      top: 50%; /* 設(shè)置頂部距離為容器高度的50% */
      left: 50%; /* 設(shè)置左邊距離為容器寬度的50% */
      transform: translate(-50%, -50%); /* 使用變換將矩形向上和向左移動(dòng)50%,實(shí)現(xiàn)居中 */
      width: 400px; /* 設(shè)置矩形寬度為400像素 */
      height: 300px; /* 設(shè)置矩形高度為300像素 */
      background-color: #4CAF50; /* 設(shè)置背景顏色為綠色 */
      border: 2px solid #000; /* 設(shè)置邊框?yàn)?像素的黑色實(shí)線 */
      border-radius: 10px; /* 設(shè)置圓角為10像素 */
    }
  </style>
</head>
<body>
  <div class="body-content"> <!-- 使用內(nèi)容容器類 -->
    <div class="rectangle"></div> <!-- 使用矩形類 -->
  </div>
</body>
</html>

在這個(gè)示例中,.rectangle類使用position: absolute屬性相對(duì)于其最近的相對(duì)定位祖先(.body-content)進(jìn)行定位,然后使用transform: translate(-50%, -50%)將其向左和向上移動(dòng)50%,以實(shí)現(xiàn)居中。這段代碼使用了絕對(duì)定位和transform屬性,這是一種更傳統(tǒng)的方法,也可以實(shí)現(xiàn)相同的效果。

推薦學(xué)習(xí):

三、提升開發(fā)效率的工具

在開發(fā)過程中,我們可以使用豆包MarsCode編程助手來提升我們的編碼效率。豆包 MarsCode提供了智能補(bǔ)全、智能預(yù)測(cè)、智能問答等功能,幫助開發(fā)者節(jié)省時(shí)間,釋放創(chuàng)造力。它支持超過100種編程語言,并兼容VSCode和JetBrains代碼編輯器,是你編程路上的得力助手。詳情見《豆包MarsCode官方使用指南

豆包MarsCode編程助手

通過這篇文章,我們不僅學(xué)習(xí)了如何使用CSS3創(chuàng)建圓角矩形,還了解了如何將其居中顯示在頁面上。希望這些知識(shí)能夠幫助你在前端開發(fā)的道路上更進(jìn)一步。如果你對(duì)編程感興趣,不妨訪問編程獅W3Cschool,開始你的編程學(xué)習(xí)之旅。

1 人點(diǎn)贊