What is the difference between 看不起 and 看不上? The two have very similar meanings and can both be used to mean "detest, despise, look down upon" but there seems to be a subtle difference.

According to these entries:

看不起 http://www.zdic.net/c/b/149/321190.htm

看不上 http://www.zdic.net/c/b/164/364508.htm

看不上 can also carry the meaning of "cannot suit for one’s idea". There's also a blog post that states that 看不起 is more of an objective judgement whereas 看不上 is more subjective, hence the latter could simply mean something is not up to the speaker's standards. However I'm not entirely convinced, and was hoping there were better sources outlining the differences between the two.
I am not a linguist. So I can only give you my perspective as a native Chinese speaker.

To make it short: 看不起 is rarely used on an object, whereas 看不上 can be used on both persons and objects.

Some examples:


我最 看不起 他这种自私的人。 CORRECT
我最 看不上 他这种自私的人。 CORRECT
品味一向很高的她根本 看不上 这种便宜货。 CORRECT
品味一向很高的她根本 看不起 这种便宜货。 Understandable but AWKWARD