做九宮格時遇到的問題
分別使用的float和flex來布局
主要問題在於當寬度自適應時如何讓高度等於寬度。
首先想到的是與寬度一樣設置高度自適應,如要為每個九宮格設置百分數的高度,要使它有效,則要設置父元素高度,若父元素仍然為百分數則要依次設置每一級的父元素高度,全為百分數的話,最后一級html必須設置height:100%;的百分數高度才有效。
但是,這時不能讓高度一直等於寬度,因此采用另外的方式。
由於padding、margin等都是基於本身元素來設置的,可以通過height:0;padding-bottom:(小格子的寬如30%);來設置,此時就能保證高=寬
再想到若是子格存在子元素會怎樣,實驗了一下不影響什么
代碼:https://github.com/dakeke/responsive--page/tree/master/others/sudoku
demo:https://dakeke.github.io/responsive--page/others/sudoku