Они все там, ваши дочерние ящики, но они сложены друг на друга и занимают одно и то же место.
.child{
// position:absolute; <-- take this out
position:relative; // add this one
background: grey;
height: 10%;
width: 10%;
}
Позиция absolute
означает, что она ни с чем не взаимодействует остальное в отношении космоса.
Позиция relative
означает, что дочерние блоки будут расположены относительно друг друга.
Также: class
имена разделены пробелами в HTML, поэтому ваши внутренние блоки имеют 2 класса каждый, «коробка» и «ребенок». Это нормально, у вас может быть много классов, но css, который вы сделали для класса бокса, будет применяться как к внешнему блоку, так и к внутренним боксам, что, я не думаю, было вашим намерением.