diff --git a/core/modules/system/system.base-rtl.css b/core/modules/system/system.base-rtl.css
index 9099c9d..4082512 100644
--- a/core/modules/system/system.base-rtl.css
+++ b/core/modules/system/system.base-rtl.css
@@ -35,14 +35,11 @@ html.js input.throbbing {
  * TableDrag behavior.
  */
 .draggable a.tabledrag-handle {
-  float: right;
-  margin: -0.4em -0.5em -0.4em 0;
-  padding: 0.42em 0.5em 0.42em 1.5em;
+  padding-left: 10px;
+  padding-right: 0;
 }
 div.indentation {
-  float: right;
-  margin: -0.4em -0.4em -0.4em 0.2em;
-  padding: 0.42em 0.6em 0.42em 0;
+   /* @todo Floats were used to not fiddle with RTL in JS. */
 }
 div.tree-child,
 div.tree-child-last {
diff --git a/core/modules/system/system.base.css b/core/modules/system/system.base.css
index e78edca..0336bed 100644
--- a/core/modules/system/system.base.css
+++ b/core/modules/system/system.base.css
@@ -91,11 +91,11 @@ body.drag {
 }
 .draggable a.tabledrag-handle {
   cursor: move;
-  float: left; /* LTR */
-  height: 1.7em;
-  margin: -0.4em 0 -0.4em -0.5em; /* LTR */
-  padding: 0.42em 1.5em 0.42em 0.5em; /* LTR */
+  display: inline-block;
+  padding-right: 10px; /* LTR */
   text-decoration: none;
+  /* vertical-align: middle; IE? */
+  vertical-align: text-bottom;
 }
 a.tabledrag-handle:hover {
   text-decoration: none;
@@ -103,18 +103,15 @@ a.tabledrag-handle:hover {
 a.tabledrag-handle .handle {
   background: url(../../misc/draggable.png) no-repeat 0 0;
   height: 13px;
-  margin-top: 4px;
   width: 13px;
 }
 a.tabledrag-handle-hover .handle {
   background-position: 0 -20px;
 }
 div.indentation {
-  float: left; /* LTR */
-  height: 1.7em;
-  margin: -0.4em 0.2em -0.4em -0.4em; /* LTR */
-  padding: 0.42em 0 0.42em 0.6em; /* LTR */
-  width: 20px;
+  display: inline-block;
+  width: 23px;
+  height: 100%;
 }
 div.tree-child {
   background: url(../../misc/tree.png) no-repeat 11px center; /* LTR */
