1895年1月20日,日本陆军攻占了威海卫城和南北两帮炮台,海军严密封锁海面,达成了对集泊于港内的北洋舰队的水陆夹击态势;北洋舰队由此陷入困境。在险恶的形势里,刘步蟾辅佐丁汝昌,积极组织北洋舰队进行顽强的抵抗,打退了日本海军的多次进攻。2月5日凌晨,刘步蟾和丁汝昌正在“定远”舰上商议作战事宜,日军派出鱼雷艇队进行偷袭,“定远”舰被鱼雷击中。刘步蟾一面组织堵漏,一面果断地下令砍断锚链,将“定远”舰驶至刘公岛附近的浅水处,以充当炮台使用。此后,刘步蟾指挥“定远”舰配合炮台,先后打退了日军的8次进攻。
2月10日,被困在刘公岛的北洋舰队弹尽粮绝,外援无望,危在旦夕。“定远”舰坐滩岸边,也是伤痕累累,不堪久战。此时,北洋舰队内部一些官兵逼迫丁汝昌和刘步蟾率军投降。刘步蟾坚辞拒降,但也深感自己无力挽回大局;为免资敌,他忍痛下令炸沉了由自己在德国监造并一直驾驶的“定远”舰。当天深夜,处于极度绝望之中的刘步蟾悲愤难禁,服毒自杀,做到了“舰亡与亡,志节凛然,无愧舍生取义”,时年仅44岁。
李鸿章获悉刘步蟾自杀的消息后,深感惋惜,并盛赞刘步蟾当年直陈御日之计是实言真心。清廷谕令:将刘步蟾照提督阵亡例从优赐恤,世袭骑都尉加一等云骑尉。一代海军名将,就这样与他所钟爱的战舰,一同消失在保家卫国的海上疆场。