Index: trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java	(revision 16318)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java	(revision 16319)
@@ -25,4 +25,5 @@
 import org.openstreetmap.josm.data.preferences.CachingProperty;
 import org.openstreetmap.josm.data.preferences.NamedColorProperty;
+import org.openstreetmap.josm.gui.mappaint.mapcss.CSSColors;
 import org.openstreetmap.josm.tools.ColorHelper;
 import org.openstreetmap.josm.tools.I18n;
@@ -125,6 +126,8 @@
                 final String color = str.matches("#[0-9A-Fa-f]{3,8}")
                         ? str
-                        : ColorHelper.color2html(ColorHelper.html2color(str));
-                str = "<html><body><span color='" + color + "'>\u25A0</span> " + str + "</body></html>";
+                        : ColorHelper.color2html(CSSColors.get(str));
+                if (color != null) {
+                    str = "<html><body><span color='" + color + "'>\u25A0</span> " + str + "</body></html>";
+                }
             }
             ((JLabel) c).putClientProperty("html.disable", enableHTML ? null : Boolean.TRUE); // Fix #8730
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java	(revision 16318)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java	(revision 16319)
@@ -15,4 +15,5 @@
 import org.openstreetmap.josm.data.tagging.ac.AutoCompletionPriority;
 import org.openstreetmap.josm.gui.MainApplication;
+import org.openstreetmap.josm.gui.mappaint.mapcss.CSSColors;
 import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
 import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionList;
@@ -135,5 +136,8 @@
 
     protected Color getColor() {
-        return ColorHelper.html2color(String.valueOf(getSelectedItem()));
+        String colorString = String.valueOf(getSelectedItem());
+        return colorString.startsWith("#")
+                ? ColorHelper.html2color(colorString)
+                : CSSColors.get(colorString);
     }
 
Index: trunk/src/org/openstreetmap/josm/tools/ColorHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ColorHelper.java	(revision 16318)
+++ trunk/src/org/openstreetmap/josm/tools/ColorHelper.java	(revision 16319)
@@ -3,6 +3,4 @@
 
 import java.awt.Color;
-
-import org.openstreetmap.josm.gui.mappaint.mapcss.CSSColors;
 
 /**
@@ -16,5 +14,5 @@
 
     /**
-     * Returns the {@code Color} for the given HTML code, also evaluates CSS color names using {@link CSSColors}.
+     * Returns the {@code Color} for the given HTML code.
      * @param html the color code
      * @return the color
@@ -30,5 +28,5 @@
         }
         if (html.length() != 6 && html.length() != 8)
-            return CSSColors.get(html);
+            return null;
         try {
             return new Color(
@@ -38,5 +36,5 @@
                     html.length() == 8 ? Integer.parseInt(html.substring(6, 8), 16) : 255);
         } catch (NumberFormatException e) {
-            return CSSColors.get(html);
+            return null;
         }
     }
Index: trunk/test/unit/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRendererTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRendererTest.java	(revision 16319)
+++ trunk/test/unit/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRendererTest.java	(revision 16319)
@@ -0,0 +1,55 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.gui.dialogs.properties;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.function.IntFunction;
+
+import javax.swing.JLabel;
+import javax.swing.JTable;
+import javax.swing.table.DefaultTableModel;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.openstreetmap.josm.testutils.JOSMTestRules;
+
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+
+/**
+ * Unit tests of {@link PropertiesCellRenderer} class.
+ */
+public class PropertiesCellRendererTest {
+
+    /**
+     * Setup test.
+     */
+    @Rule
+    @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
+    public JOSMTestRules test = new JOSMTestRules().preferences();
+
+    /**
+     * Test of color rendering.
+     */
+    @Test
+    public void testColorRendering() {
+        PropertiesCellRenderer renderer = new PropertiesCellRenderer();
+        DefaultTableModel tableModel = new DefaultTableModel(new Object[][]{
+                new Object[]{"colour", "red"},
+                new Object[]{"colour", "green"},
+                new Object[]{"colour", "#123"},
+                new Object[]{"colour", "#123456"},
+                new Object[]{"colour", "foobarbaz"},
+                new Object[]{"elevation", "314159"},
+        }, new Object[]{"key", "value"});
+        JTable table = new JTable(tableModel);
+        IntFunction<String> getLabel = row -> ((JLabel) renderer.getTableCellRendererComponent(
+                table, table.getValueAt(row, 1), false, false, row, 1)).getText();
+        assertEquals("<html><body><span color='#FF0000'>\u25A0</span> red</body></html>", getLabel.apply(0));
+        assertEquals("<html><body><span color='#008000'>\u25A0</span> green</body></html>", getLabel.apply(1));
+        assertEquals("<html><body><span color='#123'>\u25A0</span> #123</body></html>", getLabel.apply(2));
+        assertEquals("<html><body><span color='#123456'>\u25A0</span> #123456</body></html>", getLabel.apply(3));
+        assertEquals("foobarbaz", getLabel.apply(4));
+        assertEquals("314159", getLabel.apply(5));
+    }
+
+}
Index: trunk/test/unit/org/openstreetmap/josm/tools/ColorHelperTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/tools/ColorHelperTest.java	(revision 16318)
+++ trunk/test/unit/org/openstreetmap/josm/tools/ColorHelperTest.java	(revision 16319)
@@ -26,7 +26,4 @@
         assertEquals(Color.CYAN, ColorHelper.html2color("#00ffff"));
         assertEquals(Color.CYAN, ColorHelper.html2color("#00FFFF"));
-        assertEquals(Color.CYAN, ColorHelper.html2color("cyan"));
-        assertEquals(new Color(0xa52a2a), ColorHelper.html2color("brown"));
-        assertEquals(new Color(0x6495ed), ColorHelper.html2color("cornflowerblue"));
         assertEquals(new Color(0x12345678, true), ColorHelper.html2color("#34567812"));
     }
