整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          HTML 中的 box-border 盒子邊框詳解

          order 盒子邊框

          復合屬性。設置對象邊框的特性。

          盒子邊框三要素:

          ① 邊框粗細

          ② 邊框樣式

          ③ 邊框顏色

          語法:border: border-width | border-style | border-color ;

          邊框四邊的粗細、樣式、顏色,以及上下左右每個位置的樣式屬性都是可以單獨調整的。

          邊框的顏色不是必要的,如果不指定顏色,默認顏色為黑色,但必須為盒子指定寬高。


          初始 HTML

           <!DOCTYPE html>
           <html>
           <head>
               <meta charset="UTF-8">
               <meta name="viewport" content="width=device-width, initial-scale=1.0">
               <title>Document</title>
               <style>
                   div{
                       width: 500px;
                       height: 50px;
                   }
               </style>
           </head>
           <body>
               <div></div>
           </body>
           </html>




          邊框樣式

          使用 border-style 可為盒子邊框設置樣式,以下示例為實線

           /* CSS代碼 */
           div{
               width: 500px;
               height: 50px;
               border-style: solid; 
           }

          效果:


          可單獨針對某一方向設置邊框樣式

          示例 CSS 代碼

          • 上邊:border-top-style: double; (雙線)
          • 右邊:border-right-style: solid; (實線)
          • 下邊:border-bottom-style: dashed; (虛線)
          • 左邊:border-left-style: dotted; (點線)


          border-style 說明

          • 如果提供全部四個參數值,將按上、右、下、左的順序作用于四邊。
          • 如果只提供一個,將用于全部的四邊。
          • 如果提供兩個,第一個用于上、下,第二個用于左、右。
          • 如果提供三個,第一個用于上,第二個用于左、右,第三個用于下。
          • 如果border-width等于0,本屬性將失去作用。

          如果需要設置不同方向的樣式屬性,可以寫在一句 CSS 代碼里,比如說下面這段代碼,上下實線,左右虛線。

           /* CSS代碼 */
           div{
               width: 500px;
               height: 50px;
               border-style: solid dashed;
           }

          效果:


          border-style 樣式屬性值

          屬性值解釋none無輪廓。 border-color將被忽略,border-width計算值為0,除非邊框輪廓為圖像,即border-image。hidden隱藏邊框。IE7及以下尚不支持dotted點狀輪廓。IE6下顯示為dashed效果dashed虛線輪廓solid實線輪廓double雙線輪廓。兩條單線與其間隔的和等于指定的border-width值groove3D凹槽輪廓ridge3D凸槽輪廓inset3D凹邊輪廓outset3D凸邊輪廓




          邊框粗細

          使用 border-width 可為盒子邊框設置粗細,以下示例邊框為 5px 粗細

           /* CSS代碼 */
           div{
               width: 500px;
               height: 50px;
               border-style: solid;
               border-width: 5px;
           }

          效果


          可單獨針對某一方向設置邊框粗細

          示例 CSS 代碼

          • 上邊:border-top-width: 10px; (雙線)
          • 右邊:border-right-width: 10px; (實線)
          • 下邊:border-bottom-width: 10px; (虛線)
          • 左邊:border-left-width: 10px; (點線)


          border-width 說明

          • 如果提供全部四個參數值,將按上、右、下、左的順序作用于四邊。
          • 如果只提供一個,將用于全部的四邊。
          • 如果提供兩個,第一個用于上、下,第二個用于左、右。
          • 如果提供三個,第一個用于上,第二個用于左、右,第三個用于下。
          • 如果border-style設置為none或hidden,border-width的使用值將為0。

          如果需要設置不同方向的邊框粗細,可以寫在一句 CSS 代碼里。

          比如說下面這段代碼,上下2px,右2px,左5px。

           /* CSS代碼 */
           div{
               width: 500px;
               height: 50px;
               border-style: solid;
               border-width:2px 2px 2px 5px;
           }

          效果:




          邊框顏色

          可直接輸入

          顏色的英文名稱

          rgb值

          十六進制

          使用 border-color 可為盒子邊框設置顏色,以下示例邊框顏色為紅色。

           /* CSS代碼 */
           div{
               width: 500px;
               height: 50px;
               border-style: solid;
               border-width:2px 2px 2px 5px;
               border-color: red;
           }

          效果:


          可單獨針對某一方向設置邊框顏色

          示例 CSS 代碼

          • 上邊:border-top-color: 10px;
          • 右邊:border-right-color: 10px;
          • 下邊:border-bottom-color: 10px;
          • 左邊:border-left-color: 10px;


          border-color 說明

          • 如果提供全部四個參數值,將按上、右、下、左的順序作用于四邊。
          • 如果只提供一個,將用于全部的四邊。
          • 如果提供兩個,第一個用于上、下,第二個用于左、右。
          • 如果提供三個,第一個用于上,第二個用于左、右,第三個用于下。
          • 如果border-width等于0或border-style設置為none,本屬性將被忽略。

          上面有兩個示例講述如何設置不同方向的屬性,border-color 也是相同使用方法,此處就不做示例了。




          border 是復合屬性

          如果你需要同時設置盒子的粗細、樣式、顏色,那么你可以將他們的樣式表寫在同一行代碼里。

          例如:

           /* CSS代碼 */
           div{
               border-top: 5px solid red;
           }

          這段代碼指定了上邊框的三個屬性:粗細、樣式、顏色

          border-top 包含了:

          • border-top-width: 5px;
          • border-top-style: solid;
          • border-top-color: red;

          其他同理




          教你用 CSS 畫個三角形

          先來看一個示例

           /* CSS代碼 */
           div{
               width: 100px;
               height: 100px;
               border-top: 50px solid red;
               border-right: 50px solid blue;
               border-bottom: 50px solid green;
               border-left: 50px solid pink;
           }

          效果:

          細心的你,一定發現了 border 的邊框四條邊交接處是斜角。


          此刻我們把盒子的寬高設置為 0

           /* CSS代碼 */
           div{
               width: 0;
               height: 0;
               border-top: 50px solid red;
               border-right: 50px solid blue;
               border-bottom: 50px solid green;
               border-left: 50px solid pink;
           }

          效果:

          是不是完完全全像四個三角形一樣。

          我們只需要把上邊和左右兩邊的三角形隱藏起來,它不就是一個三角形了。

          為 border-color 指定 transparent 值,使盒子邊框顏色變透明

           /* CSS代碼 */
           div{
               width: 0;
               height: 0;
               border-top: 50px solid transparent;
               border-right: 50px solid transparent;
               border-bottom: 50px solid green;
               border-left: 50px solid transparent;
           }

          效果:

          把另外三條邊透明之后,就只剩一個三角形了。





          部分資料引用自:

          • http://caibaojian.com/css3/properties/border/index.htm

          置邊框最常使用border,比如這樣:

          border: 1px dashed #333;

          這是最常規的方法了,今天再來說說其他兩種方法,

          1. outline方式
          2. background方式

          outline方法

          這也算是一種比較常規的方法了,

          outline: 1px solid;
          

          但需要注意的是,outline是在容器的最外部,與border的渲染還是有點區別的,同時對比下:

          border: 1px dashed #333;
          outline: 1px solid;
          

          外部實線是outline,內部虛線是border,為了一致,可以設置outline-offset往內縮一點:

          outline-offset: -1px;
          

          background方法

          這是本文的重點,我也是剛get到此項技能,之前一直不知道background居然如此強大,直接上代碼:

          background: linear-gradient(90deg, #333 50%, transparent 0) repeat-x 0 0px/9px 1px, #ffffff;
          

          這里我們只設置了上面看,而且還是虛線的,做一說明這種方式的強大,再把其他邊框補上去:

          background: 
          		linear-gradient(90deg, #333 50%, transparent 0) repeat-x 0 0px/9px 1px,
              linear-gradient(90deg, #333 50%, transparent 0) repeat-x 0 100%/9px 1px,
              linear-gradient(0deg, #333 50%, transparent 0) repeat-y 0 0/1px 9px,
              linear-gradient(0deg, #333 50%, transparent 0) repeat-y 100% 0px/1px 9px,
              #ffffff;
          

          可見,使用background非常的靈活,邊框的位置可以任意調整。

          現在我們已經掌握這幾方式,但本文的重點是上面這種,我們現在來動手操練下:

          漸變邊框

          background: linear-gradient(90deg, #29bdd9 0%, #276ace 100%) repeat-x 0 0/100% 5px
              ,
              linear-gradient(-90deg, #29bdd9 0%, #276ace 100%) repeat-x 0 100%/100% 4px,
              linear-gradient(180deg, #29bdd9 0%, #276ace 100%) repeat-y 0 0/4px 100%,
              linear-gradient(0deg, #29bdd9 0%, #276ace 100%) repeat-y 100% 0/4px 100%,
              #eee;
          

          滾動虛線邊框

          .box {
            background:
               linear-gradient(90deg, #333 50%, transparent 0) repeat-x,
               linear-gradient(90deg, #333 50%, transparent 0) repeat-x,
               linear-gradient(0deg, #333 50%, transparent 0) repeat-y,
               linear-gradient(0deg, #333 50%, transparent 0) repeat-y;
               background-size: 4px 1px, 4px 1px, 1px 4px, 1px 4px;
               background-position: 0 0, 0 100%, 0 0, 100% 0;
          }
          
          .box:hover {
            animation: linearGradientMove .3s infinite linear;
          }
          
          @keyframes linearGradientMove {
              100% {
                  background-position: 4px 0, -4px 100%, 0 -4px, 100% 4px;
              }
          }
          

          滾動漸變

          .box {
            background:
               linear-gradient(90deg, #FF8235,#30E8BF, #FF8235) repeat-x,
               linear-gradient(90deg, #FF8235,#30E8BF, #FF8235) repeat-x,
               linear-gradient(0deg, #FF8235,#30E8BF, #FF8235)  repeat-y,
               linear-gradient(0deg, #FF8235,#30E8BF, #FF8235)  repeat-y;
               background-size: 100% 8px, 100% 8px, 8px 100%, 8px 100%;
               background-position: 0 0, 0 100%, 0 0, 100% 0;
          }
          
          .box:hover {
            animation: linearGradientMove 1s infinite linear;
          }
          
          @keyframes linearGradientMove {
              100% {
                  background-position: 200px 0, -200px 100%, 0 -200px, 100% 100px;
              }
          }
          

          以上就是設置邊框的幾個小技巧。

          參考:
          https://www.cnblogs.com/coco1s/p/14291567.html

          模型是CSS布局的基礎,理解它的每個組成部分對于創建整潔、響應式的網頁至關重要。本文將深入探討盒模型的四個主要組成部分:邊距(Margin)、邊框(Border)、填充(Padding)和內容(Content),并解釋它們如何共同工作來創建網頁布局。

          盒模型概述

          在CSS中,盒模型是一種用于設計和布局的概念模型,它將HTML元素視為一個盒子。這個盒子包括了元素的內容、內邊距、邊框和外邊距。理解盒模型對于控制元素的大小和在頁面上的位置至關重要。

          盒模型的結構

          +-------------------------------+
          |           Margin              |
          |  +-------------------------+  |
          |  |        Border           |  |
          |  |  +-------------------+  |  |
          |  |  |     Padding       |  |  |
          |  |  |  +-------------+  |  |  |
          |  |  |  |   Content   |  |  |  |
          |  |  |  +-------------+  |  |  |
          |  |  +-------------------+  |  |
          |  +-------------------------+  |
          +-------------------------------+
          

          每個盒子從里到外包括:

          • 內容(Content):這是盒子中的實際內容,包括文本、圖片或其他媒體。
          • 內邊距(Padding):內容區域周圍的空間,內邊距是透明的。
          • 邊框(Border):圍繞內邊距和內容的線框,可以設置大小、樣式和顏色。
          • 外邊距(Margin):盒子外圍的空間,用來隔開相鄰的盒子。

          邊距(Margin)

          邊距是盒子外部的空間,它決定了元素之間的間隔。邊距是透明的,不可見,不會被背景顏色或背景圖片覆蓋。

          /* 單邊邊距設置 */
          .element {
            margin-top: 10px;    /* 上邊距 */
            margin-right: 15px;  /* 右邊距 */
            margin-bottom: 10px; /* 下邊距 */
            margin-left: 15px;   /* 左邊距 */
          }
          
          /* 簡寫形式 */
          .element {
            margin: 10px 15px;   /* 上下邊距 | 左右邊距 */
          }
          

          邊距可以用來創建元素之間的空間,或者將元素與頁面邊緣分開。當兩個元素的垂直邊距相遇時,它們會合并成一個邊距,這個現象稱為邊距折疊。

          邊框(Border)

          邊框是盒子的一個可視化組件,圍繞著內邊距和內容。邊框的樣式、寬度和顏色都可以自定義。

          .element {
            border-style: solid; /* 邊框樣式 */
            border-width: 2px;  /* 邊框寬度 */
            border-color: black; /* 邊框顏色 */
          }
          
          /* 簡寫形式 */
          .element {
            border: 2px solid black;
          }
          

          邊框對于突出顯示元素或分隔內容非常有用。你還可以只為邊框的一邊或幾邊設置樣式。

          填充(Padding)

          填充是圍繞內容內部的空間,它可以增加內容和邊框之間的距離。與邊距不同,填充區域會被背景顏色或背景圖片覆蓋。

          .element {
            padding-top: 5px;    /* 上填充 */
            padding-right: 10px;  /* 右填充 */
            padding-bottom: 5px; /* 下填充 */
            padding-left: 10px;   /* 左填充 */
          }
          
          /* 簡寫形式 */
          .element {
            padding: 5px 10px;   /* 上下填充 | 左右填充 */
          }
          

          填充對于控制元素內部的空白區域非常有用,它可以幫助改善內容的可讀性。

          內容(Content)

          內容是盒子中的文字、圖片或其他媒體。內容的大小可以通過設置width和height屬性來控制,但實際可見區域的大小還會受到內邊距和邊框的影響。

          .element {
            width: 200px;
            height: 150px;
          }
          

          內容區域是設計和布局的核心,所有的文本和媒體都在這里顯示。

          示例

          <!DOCTYPE html>
          <html lang="en">
          <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Margin, Border, Padding Example</title>
          <style>
            body {
              font-family: 'Arial', sans-serif;
              background-color: #f4f4f4;
              margin: 0;
              padding: 20px;
            }
          
            .container {
              max-width: 800px;
              margin: auto;
              background-color: white;
              box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            }
          
            .header {
              background-color: #007bff;
              color: white;
              padding: 20px;
              text-align: center;
            }
          
            .content {
              padding: 20px;
              border: 1px solid #ddd;
              margin: 20px;
            }
          
            .box {
              background-color: #007bff;
              color: white;
              padding: 10px;
              margin: 10px;
              border: 3px solid #0056b3;
              text-align: center;
            }
          
            .footer {
              background-color: #333;
              color: white;
              padding: 10px;
              text-align: center;
            }
          </style>
          </head>
          <body>
          
          <div class="container">
            <div class="header">
              <h1>Welcome to My Page</h1>
            </div>
          
            <div class="content">
              <h2>Understanding CSS Box Model</h2>
              <p>The CSS box model is essentially a box that wraps around every HTML element. It consists of margins, borders, padding, and the actual content. This model allows us to create space between elements and style them effectively.</p>
              
              <div class="box">Content Box</div>
            </div>
          
            <div class="footer">
              Footer Content
            </div>
          </div>
          
          </body>
          </html>
          

          總結

          理解盒模型是前端開發的基礎,它允許我們精確控制元素的布局和間距。通過恰當地使用邊距、邊框、填充和內容,我們可以創建出既美觀又功能強大的網頁設計。隨著響應式設計的興起,現代CSS框架已經將盒模型的概念整合進其核心,使得跨設備布局變得更加一致和簡單。

          在日常開發中,經常使用開發者工具來檢查和調試盒模型的各個部分,確保我們的樣式表現按照預期工作。掌握盒模型,你將能夠更加自信地處理網頁布局的挑戰。


          主站蜘蛛池模板: 国产SUV精品一区二区88L| 熟女精品视频一区二区三区| 正在播放国产一区| 韩国理伦片一区二区三区在线播放 | 日韩人妻不卡一区二区三区| 91在线看片一区国产| 亚洲国产欧美国产综合一区| 日韩精品电影一区| 精品一区二区三区中文| 成人无码AV一区二区| 波多野结衣久久一区二区| 精品乱码一区二区三区在线| 亚洲乱码国产一区三区| 中文乱码人妻系列一区二区| 一区二区三区免费视频播放器| 国产精品一区二区av| 国产精品视频一区| 精品成人av一区二区三区| 亚洲视频免费一区| 亚洲人成网站18禁止一区| 亚洲狠狠久久综合一区77777| 国产日韩视频一区| 日韩精品无码一区二区中文字幕| 午夜爽爽性刺激一区二区视频| 东京热无码一区二区三区av| 伊人久久精品一区二区三区| 国产在线不卡一区二区三区| 无码aⅴ精品一区二区三区| 亚洲乱色熟女一区二区三区丝袜| 国产成人午夜精品一区二区三区| 又硬又粗又大一区二区三区视频| 日韩一区二区a片免费观看| 亚洲色婷婷一区二区三区| 国产肥熟女视频一区二区三区 | 无码精品人妻一区二区三区免费看| 九九无码人妻一区二区三区| 久久久无码精品国产一区| 色综合视频一区二区三区 | 亚洲AV无码一区二区三区系列| 国内精自品线一区91| 亚洲香蕉久久一区二区三区四区|