Box Model: CSS Margin
- ຫນ້າທີ່ຫນັງ ການສ້າງບໍລິສັດ CSS
- ຫນ້າທີ່ຕໍ່ໄປ ການລວມກາງທາງພາບກາງ CSS
ພາກຂອງບາດສາດທີ່ວົງກັບບາດສາດຂອງຫຼັກອາກາດແມ່ນ margin. ການກຳນົດ margin ຈະສ້າງ
ການກຳນົດຂອບເຂດຈຸດບາດທີ່ສຸດທີ່ຫຼາຍທີ່ສຸດແມ່ນການໃຊ້ margin attribute, attribute ນີ້ຍັງເຫັນກັບຄວາມດັບມາດຕະຖານ, ຄວາມດັບມາດຕະຖານສາມາດ, ຫຼືຄວາມດັບມາດຕະຖານລົງລາງ.
ທາງ margin CSS
ການກຳນົດຂອບເຂດຈຸດບາດທີ່ສຸດທີ່ຫຼາຍທີ່ສຸດແມ່ນການໃຊ້ margin attribute, attribute ນີ້ຍັງເຫັນກັບຄວາມດັບມາດຕະຖານ, ຄວາມດັບມາດຕະຖານສາມາດ, ຫຼືຄວາມດັບມາດຕະຖານລົງລາງ. margin attribute.
margin attribute ຍັງເຫັນກັບຄວາມດັບມາດຕະຖານທັງໝົດ: ປະກອບ, ນິນ, ມິມ, ຫຼື em.
margin ສາມາດກຳນົດເປັນ auto. ການໃຊ້ທີ່ຫຼາຍທີ່ສຸດແມ່ນການກຳນົດຄວາມດັບມາດຕະຖານສູງສັກສີສີ່ທີ່ບໍ່ອັນຕະລາງ: margin: 1/4 in;
h1 {margin : 0.25in;}
ບົດຕອນນີ້ແມ່ນຄວາມພິມຂອງ h1 ທີ່ມີຂອບເຂດຂອງຈຸດບາດສູງສັກສີສີ່ທີ່ບໍ່ອັນຕະລາງທີ່ຈະໃຊ້ຄວາມດັບມາດຕະຖານຂອງພາສາປະເທດປະເທດ (px):
h1 {margin : 10px 0px 15px 5px;}
与内边距的设置相同,这些值的顺序是从上外边距 (top) 开始围着元素顺时针旋转的:
margin: top right bottom left
另外,还可以为 margin 设置一个百分比数值:
p {margin : 10%;}
百分数是相对于父元素的 width 计算的。上面这个例子为 p 元素设置的外边距是其父元素的 width 的 10%。
margin 的默认值是 0,所以如果没有为 margin 声明一个值,就不会出现外边距。但是,在实际中,浏览器对许多元素已经提供了预定的样式,外边距也不例外。例如,在支持 CSS 的浏览器中,外边距会在每个段落元素的上面和下面生成“空行”。因此,如果没有为 p 元素声明外边距,浏览器可能会自己应用一个外边距。当然,只要你特别作了声明,就会覆盖默认样式。
ການສໍາລັບຄຳຕັດສິນ
ຍັງຈື່ງຈື່ງກວ່າ? ພວກເຮົາໄດ້ກ່າວໄວ້ກ່ຽວກັບການສໍາລັບຄຳຕັດສິນໃນສອງວັນທີ່ຜ່ານມາ. ມື້ນີ້ພວກເຮົາຈະອະທິບາຍເພື່ອນຳໃຊ້ການສໍາລັບຄຳຕັດສິນດຽວກັນ.
ມີຕອນທີ່ພວກເຮົາຈະຂຽນຄຳຕັດສິນທີ່ຕົກຕ້ານກັນ:
p {margin: 0.5em 1em 0.5em 1em;}
ການສໍາລັບຄຳຕັດສິນຈະບໍ່ຕ້ອງການຂຽນຄຳຕັດສິນຊ້າຍຄຽງຄືກັນ. ກົດລະບຽບນີ້ຈະຮູ້ດຽວກັນກັບກົດລະບຽບດ້ານຫຼັງ:
p {margin: 0.5em 1em;}
ຄຳຕັດສິນທັງສອງຈະສືບຕໍ່ທີ່ທັງໝົດ 4 ຄຳຕັດສິນ. ບາງວິທີຈະກວດວ່າ? CSS ກໍານົດກົດລະບຽບທີ່ອະນຸຍາດການຕັດສິນຂະຫຍາຍດ້ານຫົວເຂດຫຼາຍກວ່າ 4 ຄຳຕັດສິນ. ກົດລະບຽບນີ້ແມ່ນ:
- ຖ້າບໍ່ມີຄຳຕັດສິນສາມຄຳຕັດສິນສຳລັບການຫຼຸດດ້ານຊ້າຍ ຈະຖືກນຳໃຊ້ຄຳຕັດສິນສຳລັບການຫຼຸດດ້ານຂວາ.
- ຖ້າບໍ່ມີຄຳຕັດສິນສາມຄຳຕັດສິນສຳລັບການຫຼຸດດ້ານລຸ່ມ ຈະຖືກນຳໃຊ້ຄຳຕັດສິນສຳລັບການຫຼຸດດ້ານເທີງ.
- ຖ້າບໍ່ມີຄຳຕັດສິນສາມຄຳຕັດສິນສຳລັບຂະຫຍາຍດ້ານຂວາເຂດຊ້າຍ ຈະຖືກນຳໃຊ້ຄຳຕັດສິນສຳລັບການຫຼຸດດ້ານເທີງ.
ຮູບພາບດ້ານຫຼັງສະແດງວ່ານີ້ຫຼາຍກວ່າ:

ຖ້າບໍ່ມີການຕັດສິນຄຳຕັດສິນສາມຄຳຕັດສິນສຳລັບຂະຫຍາຍດ້ານຫົວເຂດຫາຍຫຼັງຈາກຄຳຕັດສິນທີສອງ (ຂະຫຍາຍດ້ານຂວາ) ທີສີ່ (ການຫຼຸດດ້ານຊ້າຍ) ຈະຖືກສໍາລັບຈາກຄຳຕັດສິນທີສອງ. ຖ້າມີຄຳຕັດສິນສອງຄຳຕັດສິນທີສີ່ (ການຫຼຸດດ້ານຊ້າຍ) ຈະຖືກສໍາລັບຈາກຄຳຕັດສິນທີສອງ ແລະ ຄຳຕັດສິນທີສາມ (ການຫຼຸດດ້ານລຸ່ມ) ຈະຖືກສໍາລັບຈາກຄຳຕັດສິນທີໜຶ່ງ (ການຫຼຸດດ້ານເທີງ). ຄາວຄັກສຸດທ້າຍຈາກທີ່ມີຄຳຕັດສິນພຽງໜຶ່ງຄຳຕັດສິນຈະຖືກສໍາລັບຂະຫຍາຍສີ່ທັງໝົດ (ການຫຼຸດດ້ານເທີງ) ຄຳຕັດສິນພຽງໜຶ່ງຄຳຕັດສິນ.
ການນຳໃຊ້ພວກມັນວ່າຄວາມງາມຫນັງນັ້ນພຽງແຕ່ຕ້ອງບອກຄຳຕັດສິນທີ່ຈຳເປັນບໍ່ຈຳເປັນຕ້ອງຜູກມັດທັງສີ່ຄຳຕັດສິນ 4 ຄຳຕັດສິນ ເຊັ່ນ:
h1 {margin: 0.25em 1em 0.5em;} /* 等价于 0.25em 1em 0.5em 1em */ h2 {margin: 0.5em 1em;} /* 等价于 0.5em 1em 0.5em 1em */ p {margin: 1px;} /* 等价于 1px 1px 1px 1px */
这种办法有一个小缺点,您最后肯定会遇到这个问题。假设希望把 p 元素的上外边距和左外边距设置为 20 像素,下外边距和右外边距设置为 30 像素。在这种情况下,必须写作:
p {margin: 20px 30px 30px 20px;}
这样才能得到您想要的结果。遗憾的是,在这种情况下,所需值的个数没有办法更少了。
ຕະຫລອດ, ຖ້າພວກເຈົ້າຕ້ອງການດຳເນີນຄວາມຂາດຂອງຂາຍຊ້າຍທັງໝົດນອກຈາກ margin-left (margin-left: 20px):
p {margin: auto auto auto 20px;}
ຕະຫລອດ, ພວກມັນຈະເຮັດໃຫ້ພວກເຈົ້າມີຜົນກະທົບດີ. ບັນຫາທີ່ຈະກະທົບແມ່ນວ່າ, ການໃຊ້ auto ຈະຫນັງກວ່າ. ຖ້າພວກເຈົ້າຕ້ອງການດຳເນີນຄວາມຂາດຂອງຂາຍຊ້າຍພຽງຫນຶ່ງສາຍ, ສາມາດໃຊ້ລັກສະນະພຽງຫນຶ່ງຂອງຂາດຂອງຂາຍຊ້າຍ.
ລັກສະນະພຽງຫນຶ່ງຂອງຂາດຂອງຂາຍຊ້າຍ
ພວກເຈົ້າສາມາດໃຊ້ບັນດາລັກສະນະພຽງຫນຶ່ງຂອງຂາດຂອງຂາຍຊ້າຍ ເພື່ອການດັດແກ້ຄວາມຂາດຂອງຂາຍຊ້າຍພຽງຫນຶ່ງຂອງສິ່ງທີ່ຈະດຳເນີນ. ຖ້າພວກເຈົ້າຕ້ອງການດຳເນີນ p ຂອງຂາຍຊ້າຍ, margin-left: 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 ຈະຫນັງກວ່າ. ແຕ່ຈາກມຸມມອງການສະແດງຂອງເອກະສານ, ພວກມັນບໍ່ມີຄວາມເປັນໄປໄດ້ທີ່ຈະແຕກຕ່າງກັນ, ເພາະວ່າພວກເຈົ້າຕ້ອງການໃຊ້ວິທີທີ່ຈະຫນັງກວ່າພວກເຈົ້າ.
ຄຳແນະນຳ ແລະ ຄວາມຄິດເຫັນ
ຄຳແນະນຳ:Netscape ແລະ IE ອອກຂໍ້ຄວາມສະເພາະ body ທີ່ກຳນົດຄວາມຂາດມາດຕະຖານ (margin) 8px. ແຕ່ Opera ບໍ່ແມ່ນແນວນັ້ນ. ດັ່ງນັ້ນ, Opera ກຳນົດຄວາມຂາດຂອງເຄື່ອງກະຈາຍໃນໄລຍະພາຍໃນ (padding) ມາດຕະຖານ 8px, ເພາະວ່າພວກເຈົ້າຕ້ອງການດັດແກ້ຂາດຂອງບາງບານຂອງເວັບໄຊທັງໝົດ ແລະ ສະແດງຢ່າງຖືກຕ້ອງໃນ Opera, ຕ້ອງການດັດແກ້ຄວາມຂາດຂອງ padding body.
ຄວາມຂາດ CSS:
- ການຕັ້ງຄວາມຂາດຂອງທີ່ປີກຂາຍຊ້າຍ
- 本例演示如何设置文本的左外边距。
- 设置文本的右外边距
- 本例演示如何设置文本的右外边距。
- 设置文本的上外边距
- 本例演示如何设置文本的上外边距。
- 设置文本的下外边距
- 本例演示如何设置文本的下外边距。
- 所有的外边距属性在一个声明中。
- 本例演示如何将所有的外边距属性设置于一个声明中。
CSS 外边距属性
属性 | 描述 |
---|---|
margin | 简写属性。在一个声明中设置所有外边距属性。 |
margin-bottom | 设置元素的下外边距。 |
margin-left | 设置元素的左外边距。 |
margin-right | ການສ້າງທາງພາບກາງຂອງປະກອບ. |
margin-top | ການສ້າງທາງພາບກາງຂອງປະກອບ. |
- ຫນ້າທີ່ຫນັງ ການສ້າງບໍລິສັດ CSS
- ຫນ້າທີ່ຕໍ່ໄປ ການລວມກາງທາງພາບກາງ CSS