use edge insets instead of frames