原因有如下3點:
1、不同顏色的光的波長不同。在肉眼可見的光譜中,紅光的波長最長,紫光的波長最短,橙、黃、綠、藍、靛介于紅光和紫光之間;
2、不同顏色的光在真空中傳播速度相同,但進入三棱鏡后傳播速度不同。紫光傳播速度最慢,紅光傳播速度最快,橙、黃、綠、藍、靛介于紅光和紫光之間;
3、玻璃對不同色光的偏折作用不同。光從空氣進入某一種物質后,被折射的程度和它在這種物質中傳播的速度有關,速度越慢,被折射得程度越大;七色光進入三棱鏡后,紫光的傳播速度最慢,偏折程度最大,因此紫光位于光譜的最下端;紅光的傳播速度最快,偏折程度最小,因此紅光位于光譜的最上端;橙、黃、綠、藍、靛等色光按波長的長短,依次排列在紅光和紫光之間。