Mfano wa kifungu: margin ya CSS

Kina mawaka yenye kima kwenye ukufungua wa kiwango cha elementi ni margin. Kumaliza margin kinakua mawaka yenye kima kwenye nje ya elementi.

Chaguo cha kwanza cha kumaliza margin ni kumtumia mwamuzi wa margin, hii inadai kiasi cha ukweli kwa uwanja wote, namba nafasi au thamani mbali mbali.

Mwamadini wa margin cha CSS

Chaguo cha kwanza cha kumaliza margin ni kumtumia: Mwamuzi wa margin.

Mwamuzi wa margin inaweza kumwambia kiasi cha ukweli kwa uwanja wote, inaweza kuwa pixels, inchi, mita au em.

Margin inaweza kuwa auto. Inayotumiwa sana ni kumtegemea ukweli wa margin. Kuzingatia hiyo, kina mawaka ya 1/4 inchi kwenye h1 kina mawaka yenye kima kwenye kila kima:

h1 {margin : 0.25in;}

Mfano hii ni ina nia kwenye h1 kina matokeo ya mawaka ya kiume yenye matokeo mengi, inatumiwa kiasi cha ukweli (px):

h1 {margin : 10px 0px 15px 5px;}

Kama kumekadiri ya mawingu ndani, madai hizi yanatumiwa kuanzia mawingu juu (top) kuingia kwenye elementi kwa mawingu wa kina:

mawingu: juu kulia chini kushoto

Inafaa pia kutumia namba za ufikiaji kwa mawingu:

p {mawingu : 10%;}

Namba za ufikiaji ni kwa uhusiano wa width wa mawingu wa binafsi. Kama mafanikio hayo, mawingu wa p inatokana na 10% ya width wa mawingu wa binafsi.

Mawingu inatokana na thamani ya 0, kama hii haikufikia thamani ya mawingu kama thamani iliyotumika hivi, hii inaonekana kama mawingu. Kwa hivyo, kama hawajatumiwa thamani ya mawingu kwa elementi ya p, kumekadiri kwa kawaida, kumekadiri kwa mawingu inatumiwa. Tabia hii inakubadilika kama thamani inatokana na kumekadiri kwa kawaida, kama thamani ya mawingu. Kama mawingu inatokana na thamani ya 0, kumekadiri kwa kawaida inatumiwa.

Thamani ya kubadilika

Hili haujauka? Siku zilizopita tumekuwa tunaelewa kuhusu thamani ya kubadilika. Hivi siku, tunaelewa kuhusu matumizi ya thamani ya kubadilika.

Mwengine, tunaweza kuingia thamani zilizorepikia:

p {mawingu 0.5em 1em 0.5em 1em;}

Kwa thamani ya kubadilika, inafikia kufaikia thamani hizi bila ya kurepikia thamani hizi. Kama mafanikio hayo yanaingia, inafikia kufaikia thamani hizi:

p {mawingu 0.5em 1em;}

Thamani hizi zinginakubadilisha thamani za mbili zaidi. Hivyo, hizi ni hivi: CSS ina mafanikio ya kumekadiri thamani ya mawingu zaidi ya 4. Mafanikio haya ni:

  • Kama thamani ya mawingu kushoto inatuka, inatumiwa thamani ya mawingu kulia.
  • Kama thamani ya mawingu chini inatuka, inatumiwa thamani ya mawingu juu.
  • Kama thamani ya mawingu kulia inatuka, inatumiwa thamani ya mawingu juu.

Chaguo hicho kinachokubadilisha vizuri kuelewa hii:

Kipakapisha kwa thamani ya CSS

Kwa uangalifu, kama thamani ya mawingu imewekwa 3, thamani ya kane (inafiki mawingu kushoto) inatumiwa thamani ya pili (inafiki kulia). Kama thamani zilizopatikana zingine mbili, thamani ya kane inatumiwa thamani ya pili, thamani ya tatu (inafiki chini) inatumiwa thamani ya kwanza (inafiki juu). Kwa hali ya kwanza, kama thamani iliyotumiwa moja, mawingu ya nne zote inatumiwa thamani hii (inafiki juu).

Tumia mafunzo wa kwanza, inafikia angalau thamani lililoopua, bila ya kufanya kila thamani 4, kama:

h1 {mawingu 0.25em 1em 0.5em;}	/* inafikia 0.25em 1em 0.5em 1em */
h2 {mawingu 0.5em 1em;}		/* inafikia 0.5em 1em 0.5em 1em */
p {margin: 1px;}			/* 等价于 1px 1px 1px 1px */

这种办法有一个小缺点,您最后肯定会遇到这个问题。假设希望把 p 元素的上外边距和左外边距设置为 20 像素,下外边距和右外边距设置为 30 像素。在这种情况下,必须写作:

p {margin: 20px 30px 30px 20px;}

这样才能得到您想要的结果。遗憾的是,在这种情况下,所需值的个数没有办法更少了。

再来看另外一个例子。如果希望除了左外边距以外所有其他外边距都是 auto(左外边距是 20px):

p {margin: auto auto auto 20px;}

同样的,这样才能得到你想要的效果。问题在于,键入这些 auto 有些麻烦。如果您只是希望控制元素单边上的外边距,请使用单边外边距属性。

单边外边距属性

您可以使用单边外边距属性为元素单边上的外边距设置值。假设您希望把 p 元素的左外边距设置为 20px。不必使用 margin(需要键入很多 auto),而是可以采用以下方法:

p {margin-left: 20px;}

您可以使用下列任何一个属性来只设置相应上的外边距,而不会直接影响所有其他外边距:

一个规则中可以使用多个这种单边属性,例如:

h2 {
  margin-top: 20px;
  margin-right: 30px;
  margin-bottom: 30px;
  margin-left: 20px;
  }

当然,对于这种情况,使用 margin 可能更容易一些:

p {margin: 20px 30px 30px 20px;}

不论使用单边属性还是使用 margin,得到的结果都一样。一般来说,如果希望为多个边设置外边距,使用 margin 会更容易一些。不过,从文档显示的角度看,实际上使用哪种方法都不重要,所以应该选择对自己来说更容易的一种方法。

Mambo ya uharibifu na mafanikio

Mambo ya uharibifu:Netscape na IE wanaingiza upekee wa kifupi cha kina kwenye kifupi cha body (margin) kuwa 8px. Hivyo Opera hawasema hivyo. Kwa sababu hiyo, Opera inadumisha upekee wa kifupi cha kina (padding) kuwa 8px, kwa sababu hiyo, kama unataka kumwambia kufupishwa kwenye ukingo wa wiziweka zaidi, na kuonekana kwa habari ya Opera, lazima uweze kumwambia kifupi cha kina padding kwenye upekee wa kufupisha.

Mfano wa kifupi cha CSS:

Kuandika mawazo wa kimaandiko kwenye kina la kimaandiko cha kuzingatia
本例演示如何设置文本的左外边距。
Kumekisha mvuvu wa nje wa matext wa nje
Mafanikio ya hili inadhumisha kumekisha mvuvu wa nje wa matext wa nje.
Kumekisha mvuvu wa nje wa matext wa kina
Mafanikio ya hili inadhumisha kumekisha mvuvu wa nje wa matext wa kina.
Kumekisha mvuvu wa nje wa matext
Mafanikio ya hili inadhumisha kumekisha mvuvu wa nje wa matext.
Matokeo ya kila sababu ya mvuvu wa nje yana kipakapisha kina moja.
Mafanikio ya hili inadhumisha kumekisha mvuvu wa nje wa kila sababu kwa kipakapisha kina moja.

Mwamadini wa mvuvu wa nje wa CSS

Mwamadini Muhtasari
margin Kipakapisha kwa sababu ya matumizi ya kina ya kufikia mvuvu wa nje wa kila sababu.
margin-bottom Kumekisha mvuvu wa nje wa kiwango cha element.
margin-left Kumekisha mvuvu wa nje wa kiwango cha element.
margin-right Kumekisha mvuvu wa nje wa kiwango cha element.
margin-top Kumekisha mvuvu wa kina wa kiwango cha element.