故事發生于1934年的香港。“十二少”陳振邦(張國榮 飾)是壹名出入鴉片煙窟的花花公子,遇上了石塘咀绮紅樓的名妓“紅牌阿姑”如花(梅豔芳 飾),二人旋即陷入熱戀。但是,十二少的陳門乃望族不接受妓女作媳婦,家族並不接納他們的關系,逐振邦出門,于是兩人在窮困中掙紮。如花與振邦訂下陰世之約,在3月8日晚上11時,吞食鴉片殉情自盡,如花並約定十二少,若有何偏差,也要記著“3811”爲她找十二少的記認。