11岁男孩灯芽的爸爸和妈妈在一次出海打鱼中,因天气变化,灯塔不亮发生事故,灯芽的妈妈受伤,爸爸由于无脸面对乡亲,出事后偷偷外出打工。面对家庭的变故,灯芽自强不息,努力学习,并照顾好妈妈的生活,同时他并不认为父亲是胆小鬼。灯芽与同学们自发筹集资金……。没有责任感的李立昌(刘青云 饰),行为粗鲁,多年工作只是在夜总会当个小职员。年少时他与叶婷(叶童 饰)结婚并育有一子Jason(黎应就 饰)。两人性格不合离婚后,叶婷带着儿子到加拿大定居。多年后,叶婷因再婚回港需要李立昌帮忙照顾儿子,可是李立昌吊儿郎当与知书识礼的儿子成为鲜明的对比,此间立昌在儿子身上学会了宽容与尊重。立昌原本有个若即若离的女友Angle(舒淇 饰),由于立昌缺乏责任感,Angle不敢对他付托终身,立昌的改变令他们之间的感情也出现了转机。就在这时,Jason被检验出患有严重肝病……。