diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index 0392733f4ca7ea7e213a163f903d2438e1495274..629c8689682b42120ecaf4b19fd75a708acb4b2b 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -92,21 +92,6 @@
 	height: 100%;
 }
 
-/**
- * Override global #controls styles
- * to be more flexible / relative
- */
-#body-user .app-files #controls {
-	left: 250px; /* sidebar width */
-	position: fixed;
-	padding-left: 0px;
-}
-
-/* this is mostly for file viewer apps, text editor, etc */
-#body-user .app-files.no-sidebar #controls {
-	left: 0px;
-}
-
 /* move Deleted Files to bottom of sidebar */
 .nav-trashbin {
 	position: absolute !important;
@@ -224,7 +209,7 @@ table.multiselect thead {
 	z-index: 10;
 	-moz-box-sizing: border-box;
 	box-sizing: border-box;
-	left: 230px; /* sidebar */
+	left: 250px; /* sidebar */
 }
 
 table.multiselect thead th {
diff --git a/core/css/mobile.css b/core/css/mobile.css
index 98033528210d87692f34a9203ac23ee3575377b9..9dad72a028664964f8e14f6fa670c26a4e402e28 100644
--- a/core/css/mobile.css
+++ b/core/css/mobile.css
@@ -40,11 +40,6 @@
 	display: none;
 }
 
-/* don’t require a minimum width for controls bar */
-#controls {
-	min-width: initial !important;
-}
-
 /* position share dropdown */
 #dropdown {
 	margin-right: 10% !important;
@@ -109,11 +104,13 @@
 	opacity: 1;
 }
 
-/* fix controls bar for apps which don't use the standard */
-#body-user .app-files #controls,
-#user-controls {
+
+/* controls bar for mobile */
+#controls {
+	min-width: initial !important;
 	left: 0 !important;
 	padding-left: 44px !important;
+	padding-right: 0 !important;
 }
 /* .viewer-mode is when text editor, PDF viewer, etc is open */
 #body-user .app-files.viewer-mode #controls {
@@ -134,11 +131,8 @@ table.multiselect thead {
 
 
 /* fix controls bar jumping when navigation is slid out */
-.snapjs-left #app-navigation-toggle {
-	top: 0;
-}
-.snapjs-left .app-files #controls,
-.snapjs-left #user-controls {
+.snapjs-left #app-navigation-toggle,
+.snapjs-left #controls {
 	top: 0;
 }
 .snapjs-left table.multiselect thead {
diff --git a/core/css/styles.css b/core/css/styles.css
index 5ad9796137dff2639f4747b96650a6d99123afb7..5e0546536ab2fa9b5f719f42a7008bbcfe627f45 100644
--- a/core/css/styles.css
+++ b/core/css/styles.css
@@ -243,9 +243,9 @@ input[type="submit"].enabled {
 	-webkit-box-sizing: border-box;
 	box-sizing: border-box;
 	position: fixed;
-	top:45px;
+	top: 45px;
 	right: 0;
-	left:0;
+	left: 0;
 	height: 44px;
 	width: 100%;
 	padding: 0;
@@ -258,6 +258,12 @@ input[type="submit"].enabled {
 	-ms-user-select: none;
 	user-select: none;
 }
+/* position controls for apps with app-navigation */
+#app-navigation+#app-content #controls {
+	left: 250px;
+	padding-right: 250px;
+}
+
 #controls .button,
 #controls button,
 #controls input[type='submit'],
diff --git a/settings/css/settings.css b/settings/css/settings.css
index 638d2fc576b5eac1b61b3d07b2fce41e03a32c94..5fd16b2da8671e709ceb15072dc43b6e69cf01d3 100644
--- a/settings/css/settings.css
+++ b/settings/css/settings.css
@@ -5,17 +5,6 @@
 select#languageinput, select#timezone { width:15em; }
 input#openid, input#webdav { width:20em; }
 
-#user-controls {
-	-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
-	position: fixed;
-	right: 0;
-	left: 250px;
-	height: 44px;
-	padding: 0; margin: 0;
-	background: #eee; border-bottom: 1px solid #e7e7e7;
-	z-index: 50;
-}
-
 /* PERSONAL */
 #rootcert_import {
 	margin: 0 0 10px 0;
diff --git a/settings/templates/users/part.createuser.php b/settings/templates/users/part.createuser.php
index 4d573168fc1fd00ae66dabf4d8f16a7f7a5af515..3dfd27ee52d2ef082ca4de97111c58d208a3bb7a 100644
--- a/settings/templates/users/part.createuser.php
+++ b/settings/templates/users/part.createuser.php
@@ -1,4 +1,4 @@
-<div id="user-controls">
+<div id="controls">
 	<form id="newuser" autocomplete="off">
 		<input id="newusername" type="text"
 			placeholder="<?php p($l->t('Login Name'))?>"