I saw a banner similar to this at a baby shower I went to last weekend. I thought it was such a cute idea, and since I have a lot of ribbon and could do this project without spending a ton of money, I decided to try it.
I went to Michael's and picked up a few of these Styrofoam letters that can be painted.
I wanted something lightweight in case my daughter ever pulled this thing down onto her head (which is very likely to happen). The letters were only a dollar each, and they usually have dollar spools of ribbon right near the front door if you are short on ribbon. Those are basically the only items you need for this, unless you want to decorate it a little more with flowers or other embellishments. I bought some butterflies to attach to the garland, but I'm still not sure if I want to add them. They were a little too bright and sparkly.
I sanded the letters a bit with some fine sandpaper and painted them an off-white color. I cut a long piece of a thicker ribbon for the banner. Then I folded that in half to find the middle and pinned it.
I gathered about 20 different patterns of ribbon in 5 colors (purple, blue, green, white, tan) and cut long enough strips so that they would still be long enough if I made a double knot in them. Then I started double knotting them to the thick blue ribbon, varying colors and patterns as I went. I started in the middle and made room for my letters, then worked my way out until I ran out of ribbon, making sure that the banner was symmetrical.
To attach the letters to the banner, I used...ummm...duct tape. High tech, I know, but it was the easiest way for me.
I tied a knot on each side where I would nail it into the wall, then hung it up. Done!
It might be a little crooked, but I'm sure a 2.5-year-old won't notice!