Select option's text is different once selected

The difference between the two DOM objects is not a matter of data, but rather a matter of the order of operations when they are created.

When you use the inline of $('<select class="blah" />'), the <select> element is created with the class already intact, and styled accordingly. When you use $(<select />, { 'class': 'blah' })`, you perform 2 operations: 1) create the item, 2) set it's class.

This seems innocuous, but it actually forces the browser to do a redraw of the element upon application of the CSS class.

Now - in your scenario, the fact that this causes the specific issue that it does is pretty clearly a bug that applies to IE - but the fact that IE shouldn't behave poorly obviously in no way prevents it from doing so.

Hope this sheds some light.