Why can't I light a LED with a 1.5 V battery?
LEDs don't work like ordinary (incandescence) light bulbs. 

Main differences (a bit simplified for very beginners):


They have a polarity, hence they must be powered using DC respecting that polarity. Reverse the polarity and they won't work. You may also damage them if you apply more than ~4V-5V in the reverse direction (these are safe values; the exact maximum tolerable value depends on the specific device).
Light emission begins only if a certain voltage is reached (threshold voltage), under that voltage the emission is negligible. Therefore, if you have a battery whose voltage is below the threshold voltage of the LED, you are out of luck, unless you use a more complicated circuit (e.g. a Joule thief or a boost DC-DC converter) to power the LED.
After the threshold voltage is reached, any very slight increase in voltage makes the LED conduct heavily, i.e. absorb a huge current. Hence you need a resistor in series to limit that current to a safe limit. There are other questions/answers on this site explaining how to calculate the value of the limiting resistor. 
Once conducting, the light intensity emitted is roughly proportional to the current (not voltage) that flows in the diode (so you get a brighter LED if you decrease the value of the limiting resistor). This up to the maximum current limit of the LED. After that limit has been reached, the device goes POOF!


You also ask why all this happens, but the answer is fairly complex, since it depends on the physical structure of the semiconductor crystal inside the diode. The physical explanation lies in quantum mechanics and solid-state physics, really tough subjects. 

The Wikipedia article on LEDs only scrapes the surface of the internal workings of the LEDs and still is fairly complex.