入门不难精通难——CSS

mess

在调试CSS的时候,常常会出现属性互相影响的情况,like this

image

为什么?——没有规律,不正交

怎么学?——背文档 or

  • marginborder

    1. 兄弟元素之间的margin会合并

      • 在两兄弟间添加一个元素,给该元素加一个bordermargin会分开(示例

      • 在两兄弟间添加一个元素,给元素设置display:table/flex属性,margin会分开(示例

    2. 父子元素之间的margin合并(示例

      • 子元素margin和父元素border/padding会相互影响

      • 子元素margin和父元素display/overflow会相互影响

  • 小圆点和display示例

    <li>元素默认display: list-item,如果将其display设为其它值,则小圆点就消失了。

  • position: absolutedisplay: inline示例

    可以看到display设置成inline的元素,在使用绝对定位后计算出来block(补充:inline-block也会变为block,如果使用inline-flex则会变成flex,说明只要使用了position: absolute,任何display设置有inline的都会被转换)

    image

  • transformposition: fixed示例

  • float和文字(示例

    float最初的设计目的是为了图文混排,因此文字会感知float元素,但float对其它元素位置不会产生影响,因为float元素脱离了文档流。而使用position: absolute的元素也脱离了文档流,但其它盒子和文本都会忽略它。

参考内容:CSS问什么这么难学?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 就是最近又撸了一次进击 突然就想写写小段子了 团长死后十年,鬼魂向设定 双视角(可能三视角) 团长独白视角 兵长...
    合起来的沈方文阅读 1,532评论 2 6
  • 哲学家所提出来的事实或观察,不会超越一般人生活经验,一个哲学家对读者所提及的事,都是自己正常及普遍的经验,以证明或...
    爺凌丶贝勒阅读 224评论 0 0
  • 【原文】道人善 即是善 人知之 愈思勉 【译文】称赞别人的美德,本身就是一种美德;别人听到你这样说他,就会更加勉励...
    人力资源管理中心阅读 750评论 0 0
  • While 循环 有时我们不知道自己想循环多少次,而是希望当某个条件达成时或某个检验失败时,退出循环。这个时候就要...
    董研阅读 483评论 0 1
  • 今天下班我到家就洗手烙饼,我们家都喜欢吃发面饼,中午姥爷发好面了。快烙完的时候小慧就吆喝:“妈妈!我的作业...
    n宁n阅读 158评论 0 3