Index: src/wp-admin/css/common.css
===================================================================
--- src/wp-admin/css/common.css	(revision 33460)
+++ src/wp-admin/css/common.css	(working copy)
@@ -164,6 +164,24 @@
 	display: none;
 }
 
+.focus-placeholder {
+	/* temporary styling for debugging */
+	width: 300px;
+	height: 1.4em;
+	position: fixed;
+	top: 7px;
+	left: 50%;
+	z-index: 100000;
+	margin-left: -150px;
+	text-align: center;
+	background: #fafafa;
+}
+
+.focus-placeholder:focus {
+	/* temporary styling for debugging */
+	outline: 2px solid red;
+}
+
 /* @todo: Take a second look. Large chunks of shared color, from the colors.css merge */
 .widget-top,
 .menu-item-handle,
Index: src/wp-admin/js/common.js
===================================================================
--- src/wp-admin/js/common.js	(revision 33460)
+++ src/wp-admin/js/common.js	(working copy)
@@ -393,6 +393,7 @@
 
 		$button.on( 'click.wp-dismiss-notice', function( event ) {
 			event.preventDefault();
+			keepFocusInPlace( $this, commonL10n.dismissed );
 			$this.fadeTo( 100 , 0, function() {
 				$(this).slideUp( 100, function() {
 					$(this).remove();
@@ -401,6 +402,30 @@
 		});
 	});
 
+	function keepFocusInPlace( $el, message ) {
+		var focusPlaceHolder;
+
+		if ( ! $el.length ) {
+			return;
+		}
+
+		focusPlaceHolder = $( '<div>', {
+			'tabindex': '0',
+			'class': 'focus-placeholder will-be-screen-reader-text'
+		});
+
+		if ( message ) {
+			focusPlaceHolder.text( message );
+		}
+
+		focusPlaceHolder
+			.insertBefore( $el )
+			.focus()
+			.on( 'blur', function() {
+				$( this ).remove();
+			});
+	}
+
 	// Init screen meta
 	screenMeta.init();
 
Index: src/wp-includes/script-loader.php
===================================================================
--- src/wp-includes/script-loader.php	(revision 33460)
+++ src/wp-includes/script-loader.php	(working copy)
@@ -81,6 +81,7 @@
 	did_action( 'init' ) && $scripts->localize( 'common', 'commonL10n', array(
 		'warnDelete' => __( "You are about to permanently delete the selected items.\n  'Cancel' to stop, 'OK' to delete." ),
 		'dismiss'    => __( 'Dismiss this notice.' ),
+		'dismissed'  => __( 'Notice dismissed.' ),
 	) );
 
 	$scripts->add( 'wp-a11y', "/wp-includes/js/wp-a11y$suffix.js", array( 'jquery' ), false, 1 );
