Heim > Web-Frontend > HTML-Tutorial > CSS:关于元素宽度的讨论_html/css_WEB-ITnose

CSS:关于元素宽度的讨论_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:38:57
Original
1171 Leute haben es durchsucht

关于元素宽度的讨论

1.元素不设宽度

第一种情况:元素为文档流中元素

<!-- 父元素宽度为100px --><div style="width:100px;">     <div style="background:orange;">dd</div></div>
Nach dem Login kopieren

<!-- 父元素宽度为200px --><div style="width:200px;">     <div style="background:orange;">dd</div></div>
Nach dem Login kopieren

<!-- 父元素不设宽度,继承body宽度 --><div>      <div style="background:orange;">dd</div></div>
Nach dem Login kopieren

结论1:把子元素定位换成position:relative与上述例子表现一样,因此在元素不设宽度时,若元素为文档流中元素,则此元素继承其父元素宽度

第二种情况:元素为脱离文档流元素

    <!-- 父元素不设宽度,继承body宽度 -->    <div>        <div style="float:left;background:orange;">dd</div>    </div>
Nach dem Login kopieren

结论2:把子元素定位换成position:absolute或position:fixed与上述例子表现一样,因此在元素不设宽度的情况下,若子元素为脱离文档流元素,则此元素宽度等于其内容宽度。

2.元素宽度为100%

第一种情况:元素为文档流中元素

结论3:将上面结论1中的例子元素宽度换为100%,表现与结论1例子的表现一样,因此若元素为文档流中元素,则子元素宽度为父元素宽度的的100%

第二种情况:元素为脱离文档流元素

1.元素为浮动元素

<!-- 父元素宽度为100px --><div style="width:100px;">     <div style="float:left;background:orange;width:100%">dd</div></div>
Nach dem Login kopieren

<!-- 父元素宽度为200px --><div style="width:200px;">     <div style="float:left;background:orange;width:100%">dd</div></div>
Nach dem Login kopieren

结论4:当元素宽度为100%时,若元素为浮动元素,则此元素宽度为父元素宽度的100%

2.元素为绝对定位元素

    <!-- 父元素宽度为100px -->    <div style="width:100px;">         <div style="position:absolute;background:orange;width:100%">dd</div>    </div>
Nach dem Login kopieren

<!-- 父元素宽度为100px --><div style="width:100px;position:relative">    <div style="position;absolute;width:100%;background:orange">dd</div></div>
Nach dem Login kopieren

<!-- 父元素宽度为200px --><div style="width:200px;position:relative">    <div style="position;absolute;width:100%;background:orange">dd</div></div>
Nach dem Login kopieren

结论5:当元素宽度为100%时,若元素为绝对定位元素,则元素宽度等于元素的offset-parent宽度的100%

3.元素为固定定位元素

<!-- 父元素宽度为100px --><div style="width:100px;"><div style="position:fixed;background:orange;width:100%">dd</div></div>
Nach dem Login kopieren

<!-- 父元素宽度为100px --><div style="width:100px;position:relative"><div style="position:fixed;background:orange;width:100%">dd</div></div>
Nach dem Login kopieren

结论6:当元素宽度为100%时,若元素为固定定位元素,则元素的宽度始终都为body宽度的100%

总结

1.在元素不设宽度的情况下:

若元素为普通流中元素,元素宽度等于父元素宽度;若元素为脱离文档流元素,元素宽度等于元素内容宽度

2.在元素宽度为100%的情况下:

若元素为普通流元素或者浮动元素,元素宽度为父元素宽度的100%;若元素为绝对定位元素,元素宽度为元素offset-parent宽度的100%;若元素为固定定位元素,元素宽度始终为body的100%

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage