The "Sir" is an honorable title used in England, so he gets to use "Sir" in front of his name because he was named a Commander of the Order of the British Empire in 1996, (CBE), and then he was knighted by QE2 for "services to music and charitable services" in 1998.
Marsha
Not entirely correct. While Elton John is a Commander of The Most Excellent Order of the British Empire, this does not entitle him, or anyone else, to use the title "sir." There are five classes of the Order, but only the two highest entitle the bearer of the award to use the title "sir" or "dame":
Knight Grand Cross of the Most Excellent Order of the British Empire
Knight Commander or Dame Commander of the Most Excellent Order of the British Empire
Commander of the Most Excellent Order of the British Empire
Officer of the Most Excellent Order of the British Empire
Member of the Most Excellent Order of the British Empire
Elton John is entitled to use "sir" only because he was made a Knight Bachelor (as you noted) in 1998.
Only those who hold the following offices/awards are entitled to use "sir" or "dame":
Baronet
Knight of the Order of the Garter
Knight of the Order of the Thistle
Knight Commander or Knight Grand Cross of the Order of the Bath
Knight Commander or Knight Grand Cross of the Order of St Michael and St George
Knight Commander or Knight Grand Cross of the Royal Victorian Order
Knight Commander or Knight Grand Cross of the Order of the British Empire
Knight Bachelor