然而,宋军统领张世杰却在战略上犯了一个看似奇怪的错误,他不派兵扼守出海口,而是自掘坟墓一般被动地退守崖山海港。
1279年决战之日,元军分四路进攻,宋军战船以大索相连形成一字阵,导致其不受攻击的部位只能按兵不动,坐视不救,而其受攻击的部位,元军却占有优势兵力。如果张世杰果断下令,砍断大索,使宋军得以展开兵力,改被动挨打为主动还击,这次海战史尚有改写的可能。但直到最后关头,他方才砍断大索,率十余舰突围,后在海陵岛溺水身亡。
根据史料记载,此次海战的兵器主要是“弓弩、火、石”,元军方面一度利用俘获的乌疍船“载草灌油,乘风纵火”,但并不成功。于是最终决定战斗走向的就是最单纯的刀剑砍杀和弓弩互射。然而,宋军以哀兵决死之态迎战,虽然在人数和舰船数量上占优,面对元军的追击部队,依然战败