D
分析:光在自然界中存在三种光现象:在日常生活中,激光准直、小孔成像和影子的形成等都表明光在同一种均匀介质中是沿直线传播的;
当光照射到物体界面上时,有一部分光被反射回来发生反射现象,例如:平面镜成像、水中倒影等;
当光从一种介质斜射入另一种介质时,传播方向的会偏折,发生折射现象,如:看水里的鱼比实际位置浅、彩虹、透镜成像等.
解答:A、日食和月食都是由于光的直线传播造成的;故A不符合题意;
B、看不见高楼后面的物体,证明光是沿直线传播的,故B不符合题意;
C、小孔成像是由于光的直线传播造成的,故C不符合题意;
D、彩虹是由于光的折射形成的,故D符合题意.
故选D.
点评:一般来说:见到影子、日月食、小孔成像、“三点一线”就联系到光的直线传播原理;见到镜子、倒影、潜望镜就联系到光的反射原理;见到水中的物体,隔着玻璃或透镜看物体,海市蜃楼就联系到光的折射原理.