در روز 20 دی سال 1325 هجری شمسی رنگ پرچم ایران رسما سه رنگ سبز، سرخ و سفید تعیین شد.
به گزارش تاریخ ایرانی، هر یک از رنگهای مزبور دارای معنا و مفهوم خاص خود هستند که میتوان درباره آنها چنین گفت: رنگ سبز، رنگ ستایش شده در روایات و اخبار و یکی از نشانههای معتقدین به دین مبین اسلام است. هماکنون در پرچم غالب کشورهای مسلمان این رنگ به چشم میخورد. رنگ سپید نشانه اعتقاد ایرانیان به صلح و دوستی است و رنگ سرخ نشانه دفاع از خاک پاک سرزمین و شهادت در راههای آرمانهای عالی میهن است.
ظهور پرچم در ایران به قیام کاوه آهنگر علیه ظلم و ستم ضحاک باز میگردد. کاوه آهنگر به منظور برانگیختن احساسات مردمی علیه ضحاک، پیشبند چرمی خود را بر سر چوبی کرد و آن را بالا گرفت تا مردم گرد او جمع شدند. پس از وی فریدون فرمان داد تا آن چرم را بیارایند و چنین بود که این پرچم را درفش شاهی نامید. گفتهاند نخستین رنگهای پرچم ایران زرد و سرخ و بنفش بود. پس از فتح ایران به دست اعراب مسلمان، ایرانیان تا دویست سال هیچ پرچمی نداشتند و تنها دو تن از قهرمانان ملی ایران زمین، یعنی ابومسلم خراسانی و بابک خرمدین دارای پرچم بودند. پرچم ابومسلم سیاه رنگ بود و پرچم بابک سرخ رنگ.
سلطان محمود غزنوی بود که برای نخستین بار دستور داد نقش یک ماه را بر روی پرچم خود که رنگ زمینه آن سیاه بود بدوزند. وی پس از آن دستور داد نقش یک شیر در آن افزوده شود. نقش خورشید بر روی پرچمها نیز از زمان خوارزمشاهیان باب شد.
رنگ و طرح پرچم ایران در طول تاریخ همواره در حال تغییر بوده است. پرچم شاه اسماعیل صفوی یکسره سبز رنگ بود و در آن تصویر ماه نیز قرار داشت. شاه طهماسب نیز در دوران پادشاهی دستور داد به جای شیر و خورشید، تصویر گوسفند را بر روی پرچمها حک کنند. تا دوره قاجارها پرچم سه گوشه بود اما در این دوره شکل پرچم برای نخستینبار از سه گوشه به چهارگوشه تغییر یافت و رنگ سرخ نیز تنها رنگ پرچم شد و در درون آن بر روی دایره سفیدی، تصویر شیر و خورشید نقش بست.
پس از پیروزی انقلاب مشروطه، در اصل پنجم متمم قانون اساسی ذکر شد: الوان رسمی بیرق ایران، سبز و سفید و سرخ و علامت شیر و خورشید است. در زمان فتحعلیشاه قاجار شمشیری به دست شیر داده شد و استفاده از این نشان تا انقلاب 1357 ادامه پیدا کرد. از حدود قرن 9 هجری (پانزده میلادی) نشان شیر و خورشید نشان محبوبی در پرچمهای ایران بود. این نشان در دورههای مختلف و نزد سلسلههای شاهی مختلف به صورتهای متفاوتی تعبیر شد، به طوری که در ابتدا تنها نماد ستارهبینی بود، بعد از آن نشان پادشاهی شد و بعدها تعبیری دینی پیدا کرد.
تعبیرهای ملیگرایانه و سلطنتی از این نشان در دوران قاجار و پهلوی به وفور یافت میشود. پس از انقلاب اسلامی نیز در اصل هجدهم قانون اساسی جمهوری اسلامی ایران تاکید شده است: پرچم رسمی ایران به رنگهای سبز و سفید و سرخ است، با این تفاوت که پس از انقلاب در میانه پرچم علامت مخصوص جمهوری اسلامی نقش بست که بر زمینۀ سفید با شعار «الله اکبر» آذینبندی شده بود. طرحی که اکنون به عنوان پرچم سه رنگ جمهوری اسلامی ایران شناخته میشود.