#page-container { min-height: 100vh; display: flex; flex-direction: column; } #content-wrap { flex: 1; } #footer { bottom: 0; width: 100%; } html[lang-direction=ltr] * { direction: ltr; } html[lang-direction=rtl] * { direction: rtl; text-align: right; } .align-top { position: absolute; top: 0; } .align-center-right { position: absolute; right: 0; top: 50%; } .align-center-left { position: absolute; left: 0; top: 50%; } .align-bottom { position: absolute; bottom: 0; }