框模型:CSS 边框

元素的边框 (border) 是围绕元素内容和内边距的一条或多条线。

CSS border 属性允许你规定元素边框的样式、宽度和颜色。

Mabaki ya kifungu cha CSS

在 HTML 中,我们使用表格来创建文本周围的边框,但是通过使用 CSS 边框属性,我们可以创建出效果出色的边框,并且可以应用于任何元素。

元素外边距内就是元素的的边框 (border)。元素的边框就是围绕元素内容和内边据的一条或多条线。

每个边框有 3 个方面:宽度、样式,以及颜色。在下面的篇幅,我们会为您详细讲解这三个方面。

边框与背景

CSS 规范指出,边框绘制在“元素的背景之上”。这很重要,因为有些边框是“间断的”(例如,点线边框或虚线框),元素的背景应当出现在边框的可见部分之间。

CSS2 指出背景只延伸到内边距,而不是边框。后来 CSS2.1 进行了更正:元素的背景是内容、内边距和边框区的背景。大多数浏览器都遵循 CSS2.1 定义,不过一些较老的浏览器可能会有不同的表现。

边框的样式

样式是边框最重要的一个方面,这不是因为样式控制着边框的显示(当然,样式确实控制着边框的显示),而是因为如果没有样式,将根本没有边框。

CSS 的 border-style 属性定义了 10 个不同的非 inherit 样式,包括 none。

例如,您可以为把一幅图片的边框定义为 outset,使之看上去像是“凸起按钮”:

a:link img {border-style: outset;}

定义多种样式

您可以为一个边框定义多个样式,例如:

p.aside {border-style: solid dotted dashed double;}

上面这条规则为类名为 aside 的段落定义了四种边框样式:实线上边框、点线右边框、虚线下边框和一个双线左边框。

我们又看到了这里的值采用了 top-right-bottom-left 的顺序,讨论用多个值设置不同内边距时也见过这个顺序。

Kufafanisha stili ya kichwa cha kati cha moja

Je unapenda ku ingia mifano ya kufungua stili ya ukichwa cha kati cha kifungu, hivyo inasema kuwa inafungua stili ya kichwa cha kati cha mbili yenye kina, inaweza kutumia tabia ya kichwa cha kati cha moja ya hapa chini:

Kwa hivyo, methodikia hizi ni sawa:

p {border-style: solid solid solid none;}
p {border-style: solid; border-left-style: none;}

Taradhishe:Ikiwa unatua kutumia uwezo mwingine, lazima uweke uwezo wa kila kati kwani mbele ya uwezo wa kuzingatia. Kwa sababu ukina kumuhesha uwezo wa kila kati kwenye border-style, thamani ya kuzingatia inakubali uwezo wa kila kati none.

Kikati cha kamba

Unaweza kumuhesha: Uwezo wa border-widthKumuhesha kikati cha kamba.

Kumuhesha kikati cha kamba kwa uwezo wa uwezo, tunaweza kumuhesha thamani ya uzito, kama 2px au 0.1em; au kutumia moja ya uwezo wa 3, ambapo ni thin, medium (wa kuzingatia) na thick.

注释:CSS haikunaeleza kikati cha 3 kwa uwezo wa uwezo, kwa hivyo mbinu mmoja inaweza kumuhesha thin, medium (wa kuzingatia) na thick kama 5px, 3px na 2px, na mbinu mwingine inaweza kumuhesha 3px, 2px na 1px.

Kwa hivyo, tunaweza kumuhesha kikati cha kamba kama:

p {border-style: solid; border-width: 5px;}

au:

p {border-style: solid; border-width: thick;}

Kumuhesha kikati cha kamba kwa kila kati

Unaweza kumuhesha kikati cha kamba kila kati kwa orderi ya top-right-bottom-left:

p {border-style: solid; border-width: 15px 5px 15px 5px;}

Matokeo yaliyopita pia inaweza kupewa kama (hii inaitwaTupia na thamani):

p {border-style: solid; border-width: 15px 5px;}

Wewe pia unaweza kutumia uwezo huu kumuhesha kikati cha kamba kila kati:

Kwa hivyo, mabaya yanafikia uadilifu na matokeo yaliyopita:

p {
  border-style: solid;
  border-top-width: 15px;
  border-right-width: 5px;
  border-bottom-width: 15px;
  border-left-width: 5px;
  }

Hakuna kamba

Kwenye matokeo yaliyopita, unavyofikia, ukitaka kuonyesha kamba kama kingine, lazima uweke mifano ya kamba, kama solid au outset.

Tafadhali tukabidhi border-style kuwa none, ni unaweza kifikia ujumbe gani:

p {border-style: none; border-width: 50px;}

尽管边框的宽度是 50px,但是边框样式设置为 none。在这种情况下,不仅边框的样式没有了,其宽度也会变成 0。边框消失了,为什么呢?

这是因为如果边框样式为 none,即边框根本不存在,那么边框就不可能有宽度,因此边框宽度自动设置为 0,而不论您原先定义的是什么。

记住这一点非常重要。事实上,忘记声明边框样式是一个常犯的错误。根据以下规则,所有 h1 元素都不会有任何边框,更不用说 20 像素宽了:

h1 {border-width: 20px;}

由于 border-style 的默认值是 none,如果没有声明样式,就相当于 border-style: none。因此,如果您希望边框出现,就必须声明一个边框样式。

边框的颜色

设置边框颜色非常简单。CSS 使用一个简单的 border-color 属性,它一次可以接受最多 4 个颜色值。

可以使用任何类型的颜色值,例如可以是命名颜色,也可以是十六进制和 RGB 值:

p {
  border-style: solid;
  border-color: blue rgb(25%,35%,45%) #909090 red;
  }

如果颜色值小于 4 个,值复制就会起作用。例如下面的规则声明了段落的上下边框是蓝色,左右边框是红色:

p {
  border-style: solid;
  border-color: blue red;
  }

注释:默认的边框颜色是元素本身的前景色。如果没有为边框声明颜色,它将与元素的文本颜色相同。另一方面,如果元素没有任何文本,假设它是一个表格,其中只包含图像,那么该表的边框颜色就是其父元素的文本颜色(因为 color 可以继承)。这个父元素很可能是 body、div 或另一个 table。

定义单边颜色

还有一些单边边框颜色属性。它们的原理与单边样式和宽度属性相同:

要为 h1 元素指定实线黑色边框,而右边框为实线红色,可以这样指定:

h1 {
  border-style: solid;
  border-color: black;
  border-right-color: red;
  }

透明边框

我们刚才讲过,如果边框没有样式,就没有宽度。不过有些情况下您可能希望创建一个不可见的边框。

CSS2 引入了边框颜色值 transparent。这个值用于创建有宽度的不可见边框。请看下面的例子:

<a href="#">AAA</a>
<a href="#">BBB</a>
<a href="#">CCC</a>

Tunaelewa kuhusu maelezo ya kimaumizi ya juu:

a:link, a:visited {
  border-style: solid;
  border-width: 5px;
  border-color: transparent;
  }
a:hover {border-color: gray;}

Tafuta tena

Kwingine cha uangalifu, kusaidia transparent, kufungua kimaumizi kinaonekana kama kimaumizi cha kijifunze; na kuna mafanikio mengine, ni inaonekana kwenda ambao inahitaji kufikirika. Kimaumizi cha transparent hivyo kinaonekana kama kimaumizi cha kijifunze, kwa sababu mabara ya kimaumizi inaendelea hadi eneo la kimaumizi (kama anavyoonekana kuna mabara ya kimaumizi).

Matokeo ya hatua:Kwenye IE7 kwenye IE/WIN hakuna kufikia kufungua kwa transparent. Kwenye versioni za zamani, IE hikiagiza rangi ya kimaumizi kwa uwezo wa kimaumizi wa kimaumizi.

Mfano wa CSS wa kimaumizi:

Mambo yote ya kimaumizi yanaendelea katika kipindi kimoja
Mfano hii inaonyesha kuhusu kufungua uharibifu wa jina wa kimaumizi wa mabara ya kimaumizi kwa kipindi kimoja.
Kufungua muundo wa kimaumizi wa mabara ya kimaumizi
Mfano hii inaonyesha kuhusu kufungua muundo wa kimaumizi wa mabara ya kimaumizi.
Kufungua kimaumizi tofauti kwa kila ukosa wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua kimaumizi tofauti kwa kila ukosa wa kimaumizi.
Mambo yote ya kimaumizi wa kimaumizi yanaendelea katika kipindi kimoja
Mfano hii inaonyesha kuhusu kufungua uharibifu wa jina wa kimaumizi wa kimaumizi kwa kipindi kimoja.
Kufungua rangi ya kimaumizi ya mabara ya kimaumizi
Mfano hii inaonyesha kuhusu kufungua rangi ya kimaumizi ya mabara ya kimaumizi. Inaweza kuwa rangi moja hadi tano.
Mambo yote ya kimaumizi yanaendelea katika kipindi kimoja
Mfano hii inaonyesha kuhusu kufungua uharibifu wa jina wa kimaumizi wa kimaumizi kwa kipindi kimoja.
Kufungua rangi ya kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua rangi ya kimaumizi wa kimaumizi.
Kufungua muundo wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua muundo wa kimaumizi wa kimaumizi.
Kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi.
Mambo yote ya kimaumizi yanaendelea katika kipindi kimoja
Mambo yote ya kimaumizi yanaendelea katika kipindi kimoja
Kufungua rangi ya kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua rangi ya kimaumizi wa kimaumizi.
Kufungua muundo wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua muundo wa kimaumizi wa kimaumizi.
Kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi.
Mambo yote ya kimaumizi yanaendelea katika kipindi kimoja
Mfano hii inaonyesha kuhusu kufungua uharibifu wa jina wa kimaumizi wa kimaumizi kwa kipindi kimoja.
Kufungua rangi ya kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua rangi ya kimaumizi wa kimaumizi.
Kufungua muundo wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua muundo wa kimaumizi wa kimaumizi.
Kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi
Mfano hii inaonyesha kuhusu kufungua uwezo wa kuuwa na upana wa kimaumizi wa kimaumizi.
Mambo yote ya kuuongea yanaendelea katika kipindi kimoja
Mfano hii inaonyesha kuhusu kufanya kwa uharibifu wa jina kufungua mambo yote ya kuuongea kwa muhimu wa mawili kwa kipindi kimoja.
Kufungua rangi ya kifungu cha juu
Mifano hii inaonyesha jinsi ya kufungua rangi ya kifungu cha juu.
Kufungua muundo wa kifungu cha juu
Mifano hii inaonyesha jinsi ya kufungua muundo wa kifungu cha juu.
Kufungua uwezo wa kifungu cha juu
Mifano hii inaonyesha jinsi ya kufungua uwezo wa kifungu cha juu.

Mfano wa kifungu cha CSS

Mfano wa uwezo Maelezo
border Mfano wa uwezo wa kufungua kila uwezo wa kifungu kwa mawazo mawili.
border-style Mfano wa uwezo wa kufungua muundo wa kifungu kwa kila eneo au kwa eneo mbili.
border-width Mfano wa uwezo wa kufungua uwezo wa kifungu kwa kila eneo au kwa eneo mbili.
border-color Mfano wa uwezo wa kufungua rangi ya kifungu kwa kila eneo au kwa eneo mbili.
border-bottom Mfano wa uwezo wa kufungua kila uwezo wa kifungu cha chini kwa mawazo mawili.
border-bottom-color Kufungua uwezo wa rangi ya kifungu cha chini.
border-bottom-style Kufungua uwezo wa muundo wa kifungu cha chini.
border-bottom-width Kufungua uwezo wa kifungu cha chini.
border-left Mfano wa uwezo wa kufungua kila uwezo wa kifungu cha kushoto kwa mawazo mawili.
border-left-color Kufungua uwezo wa rangi ya kifungu cha kushoto.
border-left-style Kufungua uwezo wa muundo wa kifungu cha kushoto.
border-left-width Kufungua uwezo wa kifungu cha kushoto.
border-right Mfano wa uwezo wa kufungua kila uwezo wa kifungu cha kimaadili kwa mawazo mawili.
border-right-color Kufungua uwezo wa rangi ya kifungu cha kimaadili.
border-right-style Kufungua uwezo wa muundo wa kifungu cha kimaadili.
border-right-width Kufungua uwezo wa kifungu cha kimaadili.
border-top Mfano wa uwezo wa kufungua kila uwezo wa kifungu cha juu kwa mawazo mawili.
border-top-color Kufungua uwezo wa rangi ya kifungu cha juu.
border-top-style Kufungua uwezo wa muundo wa kifungu cha juu.
border-top-width Kufungua uwezo wa kifungu cha juu kwa kifungu cha juu.