It's time for dinner是正确的。
it's time to dinner是不正确的, It's time for dinner(意思:到了吃晚饭的时候了)才是正确的,因为It's time for sth(意思:到了......的时候了、该是……的时候了)是固定的搭配。
for具有(表示对象)为、为了、对于、给、对、代表(群体、组织)、受雇于、往、向、前往、(表示意图、目的)用来、代表、代替等意思。
需要注意的是:如果一定要用It's time to来表示同义句的时候,正确的写法是It's time to have/eat dinner(意思:到了吃晚饭的时候了),因为It's time to do sth(到了做某事的时候了)也是固定的搭配。
注意:It's time+(for sb)to do sth......
这个词组也是固定的搭配,意思是“该是(某人)干……的时候了”例句:It's time for you to clean the classroom.(意思:该是你打扫教室的时候了),又或者It's time for you to have dinner.(意思:这是你该吃饭的时候了)。