左丞相陈宜中建议带赵昰到占城(今越南南部),并亲自跟随前往占城,但后来赵昰、赵昺数次召他回来都不返;最后逃到暹罗(今泰国),死在那里(陈根本没去越南,而是到海陵岛躲了起来,宋亡后变成某支田姓的祖宗)。赵昰因落水染病,不久死去,由弟弟七岁的卫王赵昺登基,年号祥兴。赵昺登基以后,左丞相陆秀夫和太傅(太子的老师)张世杰护卫着赵昺逃到崖山,在当地成立据点,准备继续抗元。不久,在现时广东和江西二省交界处抗元的文天祥得不到流亡朝廷的支援,被张弘范部将王惟义在海丰县的五坡岭生擒,在陆地的抗元势力覆灭。南宋流亡朝廷逃到海上,一场事关南宋流亡朝廷生死存亡的海战已是一触即发。
祥兴二年(1279年),元世祖忽必烈派汉人投降大将张弘范进攻赵昺朝廷。后来在不久以前攻占广州的西夏后裔李恒也带领援军加入张弘范军。此时宋军兵力号称二十多万,实际其中十数万为文官、宫女、太监和跟随朝廷逃难的普通百姓,各类船只两千余艘。元军张弘范和李恒有兵力两万(其中蒙古军1000人),战船数百艘。这时宋军中有建议认为应该先占领海湾出口,保护向西方的撤退路线。张世杰为防止士兵逃亡,否决建议,并下令尽焚陆地上的宫殿、房屋、据点;又下令将千多艘宋军船只以“连环船”的办法用大绳索一字形连贯在海湾内,并且安排赵昺的“龙舟”放在军队中间。元军以小船载茅草和膏脂等易燃物品,乘风纵火冲向宋船。但宋船皆涂泥,并在每条船上横放一根长木,以抵御元军的火攻。元朝水师火攻不成,以水师封锁海湾,又以陆军断绝宋军汲水及砍柴的道路;宋军吃干粮十余日,饮海水之士兵呕泄。张世杰率苏刘义和方兴日大战元军,张弘范擒张世杰外甥韩某,以其向张世杰三次招降不果。