題主的問題應該是說in和on都可用來表示'時間',即后面都可跟表示時間的詞連用,如何區別.
我的理解是這樣的:
首先,in后面一般加'段時間'.表示在這段時間里.常用于季節,年分,月份,早上,下午,晚上前如in the morning/afternoon/evening,in 2018, in July.所謂'段時間',就是說是這個時間一個時間段,而不是具體的某時某刻,某日.比如 morning,是指從半夜12點到中午12點的這段時間.2018年是從2017年12月31日晚12點到2018年12月31日晚這段.這樣說我想應該明白了吧.
其次,on后面一般加'具體日期'.常見于星期,日期,節日前.表示在'具體的某一天'.如;on sunnday, on th 12th August.on the first day,on New Year's Day.on Chrismas Eve.
另外,還有一個at,常用于'點時間'前面,如時刻,中午,夜里,半夜,黎明等.at 12;00. at noon, at night.at midnight ,at dawn,at the moment, at present,at lunch.
最后,至于你說的,'在假期里',可以說in the holiday,其實就相當于during the holiday.指'在這一段時間里' 如, I'm going to take a trip in the holiday.(這個假期我準備去旅行)
一般不用in the vacation 或in vacation.但可以有 in holidays(在假期里--泛指)和on holiday /on vacation(在度假).這里的on...表示'處于某種活動或狀態'.如,on business在工作.
當然,孤立的看這些介詞或由他們構成的短語是不夠的,我們還應該在具體的語境中去理解,看它到底是要表達什么意思,這樣才有意義,也才能準確把握.而且還不能排除有習慣用法.請仔細品味一下它們的細微差別.更多關于in/on/at的用法,請關注'英語同步課堂'.---看圖學英語.