问答详情
源自:12-4 我还要站个大位置 - 内联块状元素

关于块状元素div,包裹块状元素的问题

如代码所示,块状元素div包裹块状元素a,应该是div设置了a整个元素在一整行居中的,就是这个宽30的背景颜色在一整行居中的,为什么效果却是靠左?

如果div不是保证a整个元素居中,只是保证文字居中,而此处不具有优先级,那么可以解释。但是如果是这样,那么为什么a改为display:inline-block;之后,div却能保证a整个元素在一行居中呢?

不知道有没有人明白我的意思,求指点,谢谢

提问者:qq_夜深了飞_03660042 2016-07-28 00:24

个回答

  • 慕勒3175023
    2016-07-28 00:41:58
    已采纳

    我的理解是因为text-align针对line属性的,而对block属性不起作用

    我就这么理解吧

    block只是使元素变为一整块

    line是是元素具有水平位置属性

    因为我把你代码中display:block;改为display:line;他也居中了

  • 慕粉13167197305
    2016-08-01 22:01:57

    我理解的居中都是针对block的。对于div,因为div是占据一整行的block,所以我们看到的居中就是在一行里居中,其实就是在div的block里居中;而对于inline-block的a来说,它的block就是我们看到的粉色方块,所以设置居中元素就是在这个粉色方块里居中,因为它的block就这么大,它并不能占据一整行。

  • 各安天命
    2016-08-01 14:47:23

    那怎么把两个div放在同一行呢?不能用“display:inline-block;”吗?