Index: src/wp-includes/admin-bar.php
===================================================================
--- src/wp-includes/admin-bar.php	(revision 51407)
+++ src/wp-includes/admin-bar.php	(working copy)
@@ -83,6 +83,8 @@
 		return;
 	}
 
+	$switched = switch_to_locale( get_user_locale() );
+
 	/**
 	 * Load all necessary admin bar items.
 	 *
@@ -110,6 +112,10 @@
 	 */
 	do_action( 'wp_after_admin_bar_render' );
 
+	if ( $switched ) {
+		restore_previous_locale();
+	}
+
 	$rendered = true;
 }
 
@@ -1266,3 +1272,34 @@
 
 	return 'true' === $pref;
 }
+
+/**
+ * Temporarily change the text direction when printing admin bar styles.
+ *
+ * @since x.x.x
+ * @access private
+ *
+ * @param string $html   The link tag for the enqueued style.
+ * @param string $handle The style's registered handle.
+ *
+ * @return string The link tag for the enqueued style.
+ */
+function _admin_bar_style_set_text_direction( $html, $handle ) {
+	static $text_direction = null;
+
+	if ( ! is_admin() && 'admin-bar' === $handle ) {
+		$switched = switch_to_locale( get_user_locale() );
+
+		$text_direction = wp_styles()->text_direction;
+
+		wp_styles()->text_direction = function_exists( 'is_rtl' ) && is_rtl() ? 'rtl' : 'ltr';
+
+		if ( $switched ) {
+			restore_previous_locale();
+		}
+	} else if ( null !== $text_direction ) {
+		wp_styles()->text_direction = $text_direction;
+	}
+
+	return $html;
+}
Index: src/wp-includes/default-filters.php
===================================================================
--- src/wp-includes/default-filters.php	(revision 51407)
+++ src/wp-includes/default-filters.php	(working copy)
@@ -574,6 +574,7 @@
 
 add_action( 'wp_default_styles', 'wp_default_styles' );
 add_filter( 'style_loader_src', 'wp_style_loader_src', 10, 2 );
+add_filter( 'style_loader_src', '_admin_bar_style_set_text_direction', 10, 2 );
 
 add_action( 'wp_head', 'wp_maybe_inline_styles', 1 ); // Run for styles enqueued in <head>.
 add_action( 'wp_footer', 'wp_maybe_inline_styles', 1 ); // Run for late-loaded styles in the footer.
