相傳春秋戰國時代,晉獻公的妃子驪姬為了讓自己的兒子奚齊繼位,就設毒計謀害太子申生,申生被逼自殺。申生的弟弟重耳,為了躲避禍害,流亡出走。在流亡期間,重耳受盡了屈辱。原來跟著他一道出奔的臣子,大多陸陸續續地各奔出路去了。只剩下少數幾個忠心耿耿的人,一直追隨著他。其中一人叫介子推。有一次,重耳餓暈了過去。介子推為了救重耳,從自己大腿上割下了一塊肉,用火烤熟了就送給重耳吃。十九年後,重耳回國做了君主,這就是著名春秋五霸之一的晉文公。
晉文公執政後,對那些和他同甘共苦的臣子大加封賞,唯獨忘了介子推。有人在晉文公面前為介子推叫屈。晉文公猛然憶起舊事,心中有愧,馬上差人去請介子推上朝受賞封官。可是,差人去了幾趟,介子推不來。晉文公只好親自去請。可是,當晉文公來到介子推家時,只見大門緊閉。介子推不願見他,已經背著老母躲進了綿山(今山西介休市東南)。晉文公便讓他的御林軍上綿山搜索,沒有找到。於是,有人出了個主意說,不如放火燒山,三麵點火,留下一方,大火起時介子推會自己走出來的。晉文公乃下令舉火燒山,孰料大火燒了三天三夜,大火熄滅後,終究不見介子推出來。上山一看,介子推母子倆抱著一棵燒焦的大柳樹已經死了。晉文公望著介子推的屍體哭拜一陣,然後安葬遺體,發現介子推脊樑堵著個柳樹樹洞,洞裡好像有什麼東西。掏出一看,原來是片衣襟,上面題了一首血詩:
割肉奉君盡丹心,但願主公常清明。
柳下作鬼終不見,強似伴君作諫臣。
倘若主公心有我,憶我之時常自省。
臣在九泉心無愧,勤政清明復清明。
晉文公將血書藏入袖中。然後把介子推和他的母親分別安葬在那棵燒焦的大柳樹下。為了紀念介子推,晉文公下令把綿山改為「介山」,在山上建立祠堂,並把放火燒山的這一天定為寒食節,曉諭全國,每年這天禁忌煙火,只吃寒食。
走時,他伐了一段燒焦的柳木,到宮中做了雙木屐,每天望著它嘆道:「悲哉足下。」「足下」是古人下級對上級或同輩之間相互尊敬的稱呼,據說就是來源於此。
第二年,晉文公領著群臣,素服徒步登山祭奠,表示哀悼。行至墳前,只見那棵老柳樹死樹復活,綠枝千條,隨風飄舞。晉文公望著復活的老柳樹,像看見了介子推一樣。他敬重地走到跟前,珍愛地掐了下一枝,編了一個圈兒戴在頭上。祭掃後,晉文公把復活的老柳樹賜名為「清明柳」,又把這天定為清明節。
以後,晉文公常把血書袖在身邊,作為鞭策自己執政的座右銘。他勤政清明,勵精圖治,把國家治理得很好。
此後,晉國的百姓得以安居樂業,對有功不居、不圖富貴的介子推非常懷念。每逢他死的那天,大家禁止煙火來表示紀念。還用麵粉和著棗泥,捏成燕子的模樣,用楊柳條串起來,插在門的上方,召喚他的靈魂,這東西叫「之推燕」(介子推亦作介之推)。此後,寒食、清明成了全國百姓的隆重節日。每逢寒食,人們即不生火做飯,只吃冷食。在北方,老百姓只吃事先做好的冷食如棗餅、麥糕等;在南方,則多為青團和糯米糖藕。每屆清明,人們把柳條編成圈兒戴在頭上,把柳條枝插在房前屋後,以示懷念。