這兩天在看canvas,資料說(shuō)canvas是塊級(jí)元素。然后有個(gè)事情就讓我很費(fèi)解。。。
有簡(jiǎn)單的 html文件如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> </head> <body> <canvas id="a" style="border: 1px solid #000;"> 不支持canvas! </canvas> </body> </html>
有這樣兩個(gè)小知識(shí)點(diǎn):canvas 如果不設(shè)置寬高,默認(rèn) 300*150.而擁有定寬的塊元素想在所在行實(shí)現(xiàn)水平居中,只要設(shè)置css屬性margin: 0 auto;
就可以了。
但是,我給這個(gè)標(biāo)簽加了 margin 屬性,它并沒(méi)有水平居中。
我覺(jué)得可能是因?yàn)槟J(rèn)的 300*150 是畫布內(nèi)容的寬高,想達(dá)到效果要設(shè)置畫布的大小。然后我在行內(nèi)樣式又追加了canvas的寬高~還是不能實(shí)現(xiàn)水平居中。
想讓它水平居中,必須要設(shè)置display: block
。
可是,canvas 如果是塊級(jí)元素的話,它的 display 屬性難道不應(yīng)該默認(rèn)就是 block 嗎?十分費(fèi)解。也不知道是只有 canvas 這樣還是其他的“塊級(jí)”元素也有這樣的表現(xiàn)。。有了解的朋友可以幫忙解答一下嗎?謝謝。