HTMLSelectElement should never allow child renderers

The override of childShouldCreateRenderer in HTMLSelectElement was just
hiding some complex interactions with the cached render style on
<option> and <optgroup> and the logic in NodeRenderingContext where
styleForRenderer() needed to be called for option elements to get
the right style if they were children of an optgroup. Neither option
or optgroup will ever actually create a renderer so there's no sense in
returning true for them in childShouldCreateRenderer.

This patch makes that change and makes the updating logic for the cached
nonRendererStyle in HTMLOptionElement and HTMLOptGroupElement explicit.

Review URL: https://codereview.chromium.org/123653002

git-svn-id: svn://svn.chromium.org/blink/trunk@164438 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Node::renderStyle() should only call nonRendererStyle() for <option> and <optgroup>

nonRendererStyle() really only exists for <option> and <optgroup> and
but renderStyle() means we get a virtual call inside renderStyle() for
all elements that are not yet rendered or are display: none which is
silly. Instead check if the node is an option or optgroup first.

Review URL: https://codereview.chromium.org/123583003

git-svn-id: svn://svn.chromium.org/blink/trunk@164439 bbb929c8-8fbe-4397-9dbb-9b2b20218538