Index: /CKEditor/branches/features/aria/_source/plugins/dialogui/plugin.js
===================================================================
--- /CKEditor/branches/features/aria/_source/plugins/dialogui/plugin.js	(revision 5000)
+++ /CKEditor/branches/features/aria/_source/plugins/dialogui/plugin.js	(revision 5001)
@@ -148,6 +148,8 @@
 					var html = [];
 					if ( elementDefinition.labelLayout != 'horizontal' )
-						html.push( '<label class="cke_dialog_ui_labeled_label" id="',
-								_.labelId, '" for="' + _.inputId + '">',
+						html.push( '<label class="cke_dialog_ui_labeled_label" ' +
+								' id="'+  _.labelId + '"',
+								' for="' + _.inputId + '"',
+								' style="' + elementDefinition.labelStyle + '">',
 								elementDefinition.label,
 								'</label>',
@@ -167,5 +169,6 @@
 									html : '<label class="cke_dialog_ui_labeled_label"' +
 										' id="' + _.labelId + '"' +
-										' for="' + _.inputId + '">' +
+										' for="' + _.inputId + '"' +
+										' style="' + elementDefinition.labelStyle + '">' +
 										   CKEDITOR.tools.htmlEncode( elementDefinition.label ) +
 										'</span>'
Index: /CKEditor/branches/features/aria/_source/plugins/table/dialogs/table.js
===================================================================
--- /CKEditor/branches/features/aria/_source/plugins/table/dialogs/table.js	(revision 5000)
+++ /CKEditor/branches/features/aria/_source/plugins/table/dialogs/table.js	(revision 5001)
@@ -376,4 +376,16 @@
 													'default' : 200,
 													validate : CKEDITOR.dialog.validate['number']( editor.lang.table.invalidWidth ),
+
+													// Extra labelling of width unit type.
+													onLoad : function()
+													{
+														var widthType = this.getDialog().getContentElement( 'info', 'cmbWidthType' ),
+															labelElement = widthType.getElement(),
+															inputElement = this.getInputElement(),
+															ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
+
+														inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
+													},
+
 													setup : function( selectedTable )
 													{
@@ -387,5 +399,6 @@
 													id : 'cmbWidthType',
 													type : 'select',
-													label : '<span style="visibility:hidden">' + editor.lang.table.widthUnit + '</span>',
+													label : editor.lang.table.widthUnit,
+													labelStyle: 'visibility:hidden',
 													'default' : 'pixels',
 													items :
@@ -416,4 +429,16 @@
 													'default' : '',
 													validate : CKEDITOR.dialog.validate['number']( editor.lang.table.invalidHeight ),
+
+													// Extra labelling of height unit type.
+													onLoad : function()
+													{
+														var heightType = this.getDialog().getContentElement( 'info', 'htmlHeightType' ),
+															labelElement = heightType.getElement(),
+															inputElement = this.getInputElement(),
+															ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
+
+														inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
+													},
+
 													setup : function( selectedTable )
 													{
@@ -425,6 +450,7 @@
 												},
 												{
+													id : 'htmlHeightType',
 													type : 'html',
-													html : '<br />' + editor.lang.table.widthPx
+													html : '<div><br />' + editor.lang.table.widthPx + '</div>'
 												}
 											]
Index: /CKEditor/branches/features/aria/_source/plugins/tabletools/dialogs/tableCell.js
===================================================================
--- /CKEditor/branches/features/aria/_source/plugins/tabletools/dialogs/tableCell.js	(revision 5000)
+++ /CKEditor/branches/features/aria/_source/plugins/tabletools/dialogs/tableCell.js	(revision 5001)
@@ -105,4 +105,16 @@
 													labelLayout : 'horizontal',
 													validate : validate[ 'number' ]( langCell.invalidWidth ),
+
+													// Extra labelling of width unit type.
+													onLoad : function()
+													{
+														var widthType = this.getDialog().getContentElement( 'info', 'widthType' ),
+															labelElement = widthType.getElement(),
+															inputElement = this.getInputElement(),
+															ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
+
+														inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
+													},
+
 													setup : function( selectedCell )
 													{
@@ -126,5 +138,6 @@
 													labelLayout : 'horizontal',
 													widths : [ '0%', '100%' ],
-													label : '',
+													label : editor.lang.table.widthUnit,
+													labelStyle: 'display:none',
 													'default' : 'px',
 													items :
@@ -155,4 +168,16 @@
 													labelLayout : 'horizontal',
 													validate : validate[ 'number' ]( langCell.invalidHeight ),
+
+													// Extra labelling of height unit type.
+													onLoad : function()
+													{
+														var heightType = this.getDialog().getContentElement( 'info', 'htmlHeightType' ),
+															labelElement = heightType.getElement(),
+															inputElement = this.getInputElement(),
+															ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
+
+														inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
+													},
+
 													setup : function( selectedCell )
 													{
@@ -170,4 +195,5 @@
 												},
 												{
+													id : 'htmlHeightType',
 													type : 'html',
 													html : langTable.widthPx
