DIY Pee-Proof Fitted Sheet - Crib Sheet - Toddler Sheet

Categories: Utility, Bedding, Decor, Kid Friendly, Patriotic

Even though most crib/toddler sized mattresses are waterproof, it can be helpful to use a pee-proof fitted sheet to keep your mattress from building up odors over time…especially during those harrowing months when your toddler is practicing staying dry at night.  Crib and toddler sized fitted sheets are easy to make and by adding a layer of our Shield Moisture Barrier, you can keep your mattress fresh even when there’s an accident.

What you need to make this project

2 yards Shield LIner Fabric
1 1/2 yards Cuddle Fabric
3 yards 3/4" elastic
Coordinating thread
Sewing machine and related supplies
Sewing scissors
pen for marking
Basting Spray (optional)

Quick Shop


Shield Liner Fabric 41.5″ Wide X 12 Yard Roll

Upload a File

Select a file from your computer to include with this purchase.


Price: $119.99

Loading Updating cart...


Step One

We used Robert Kaufman Aeroplanes Cuddle® Navy.  The elastic will be going inside an elastic casing and won’t show, so feel free to use whatever color you may have on hand.  You do NOT need to trim of the selvage edges.  We want to keep them to give us a bit more width.


Step Two

I find it awkward to measure large pieces of fabric, so rather than measuring specific dimensions, I put my mattress on top of my fabric and measured 5″ out on each side.  Toddler/Crib Mattresses are fairly standard and are about 27″ x 51 1/2″ inches but can vary slightly.  Cuddle fabric comes 60″ wide.  So you should end up with a rectangle that is 37″ long and 60″ (the whole width of your fabric) wide.


Mark 5″ squares in each corner.

Step Three

With your cuddle fabric FACE DOWN, lay your Shield Liner Fabric over it.  Use basting spray to temporarily stick the Shield Liner to the back of your fabric.  This will help keep it from shifting.


Use a ruler or straight edge to mark two diagonal lines going from corner to corner.  (Not these are the corners you marked for cutting.)  Sew the marked diagonal lines on your sewing machine.  (Note:  Sewing these lines will help keep the two layers of your sheet from separating in the wash.  The Cuddle fabric is so plush that your child won’t be able to feel the stitching even when they’re laying on it.)



Step Four

Cut out the 5″ corners.


Fold each corner, so the two sides of the square you cut are lined up and pin.  Stitch with 1/2 inch seam allowance.  Repeat for all four corners.


Step Five

Now is a good time to test the fit on your mattress if you’ve got it handy.  It should fit snugly across the top and down the sides, won’t reach under for the the really tight fit a fitted sheet needs.

Now we’re going to make our casing to hold the elastic and get that really tight fit.  Cut 3 width-of-fabric (60 in) strips that are 5″ wide.


Sew them end to end.  Stitch down seam allowances, so they won’t interfere with threading the elastic through.

112-Crib-Sheet 113-Crib-Sheet

Fold in half with the fuzzy side OUT.  Stitch with a just slightly less than 1/2 inch seam allowance.  Also, since we’re using cuddle fabric that doesn’t fray, I just left the opening edge of the elastic casing raw.  If you’re using something like woven cotton, then you’d need to fold your edges under


Step Six

Starting in the middle of one of the sides of your sheet, sew your casing onto the TOP side of your sheet with a 1/2 seam allowance.   Usually I use a TON of pins when I’m sewing on cuddle, but in this case, I didn’t because I wanted to pull/stretch the casing slightly as I sewed.  It’s not necessary to add that pull in since we’ll be using elastic, but it just adds a bit of extra snugness.  You do NOT want to pull on the main sheet as you sew.

115-Crib-Sheet 116-Crib-Sheet

When you’ve made it all the way around the sheet, you’ll have some extra casing left over.  Just trim it off even with your starting point.  (Remember Cuddle DOESN’T fray, so it’s okay to have a small raw edge here.  (In the picture one of the edges if the selvege edge I started with and the second is where I trimmed it and have a raw edge.)


You’ll notice in this picture that by pulling the casing as I sewed, I achieved a slight tightening.  This is another good place to double check the fit.  This would be enough to keep the sheet on the bed…if you didn’t have a child who was going to be climbing all over it…so we need to add some elastic.


Step Seven

I can never seem to find my elastic threader when I need it…so I used a safety pin to guide the elastic through.  You’ll want to have a second safety pin handy pin the other end of your elastic somewhere on the outside.


Put your sheet over the mattress to check the final fit.  Pull the elastic so that it’s snug, but not super stretched.  Stitch the ends together.



Step Eight

And you’re ready to make the bed!



This little guy was in love as soon as he saw the airplanes, but he REALLY loves the super softness too.  (Tutorial for the Giant Heart Pillow can be found here.)


And of course since we had some extra fabric, we had to make some matching pillows.  You can find the out how to make Contrast-Edged Cuddle® Pillows here on the Shannon Fabrics blog.  The also use Embossed Star Cuddle® in Midnight Blue and Solid Cuddle® 3 in Midnight Blue.



When we had our house built we had the boys closet custom built to fit big brother’s loft bed and little brother’s bed underneath.  Makes for a super cool sleeping space…but not as bright of pictures.



You can also get the pattern for the Simple Summer Quilt on my blog here.