use a different way to prevent margin collapsing