{"id":4104,"date":"2026-03-13T21:59:34","date_gmt":"2026-03-13T21:59:34","guid":{"rendered":"https:\/\/inasrecipes.com\/?p=4104"},"modified":"2026-03-13T21:59:36","modified_gmt":"2026-03-13T21:59:36","slug":"easter-dinner-menu-ham-spring-sides-dessert","status":"publish","type":"post","link":"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/","title":{"rendered":"Easter Dinner Menu: Ham, Spring Sides + Dessert for 8"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Planning a holiday meal gets much easier when you have one clear path from main dish to dessert. This <strong>Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/strong> is built around a classic glazed ham, fresh spring vegetables, a comforting potato side, warm rolls, and a simple crowd-pleasing dessert. Current Easter menu roundups from major food sites still center Easter dinner around baked ham, potatoes, asparagus, carrots, deviled eggs, rolls, and carrot cake or pie-like desserts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ham remains a common Easter centerpiece in the United States because cured pork was historically ready to eat in spring after winter curing, and over time it became a practical, affordable holiday choice compared with lamb in many American homes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I like this menu because it feels traditional without being heavy from start to finish. The ham brings richness, so the best supporting dishes are fresh and bright. Think roasted asparagus, glazed carrots, creamy <a href=\"https:\/\/www.allrecipes.com\/recipe\/23996\/aaahh-potato-soup\/\" target=\"_blank\" rel=\"noopener\">potatoes<\/a>, and a dessert that feels festive but easy. For a hearty main-dish backup from your site, see <a href=\"https:\/\/inasrecipes.com\/oven-roasted-french-garlic-chicken\/\">Oven-Roasted French Garlic Chicken<\/a> if you need a second protein on the table.<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#it-balances-rich-and-fresh\">It Balances Rich and Fresh<\/a><\/li><li><a href=\"#it-feels-traditional-without-being-complicated\">It Feels Traditional Without Being Complicated<\/a><\/li><li><a href=\"#main-dish-brown-sugar-mustard-ham\">Main Dish: Brown Sugar Mustard Ham<\/a><\/li><li><a href=\"#spring-side-1-roasted-asparagus\">Spring Side 1: Roasted Asparagus<\/a><\/li><li><a href=\"#spring-side-2-honey-glazed-carrots\">Spring Side 2: Honey-Glazed Carrots<\/a><\/li><li><a href=\"#comfort-side-creamy-potatoes\">Comfort Side: Creamy Potatoes<\/a><\/li><li><a href=\"#bread-soft-dinner-rolls-or-biscuits\">Bread: Soft Dinner Rolls or Biscuits<\/a><\/li><li><a href=\"#dessert-carrot-cake-or-easy-holiday-pie\">Dessert: Carrot Cake or Easy Holiday Pie<\/a><\/li><li><a href=\"#for-the-ham\">For the Ham<\/a><\/li><li><a href=\"#for-the-potatoes\">For the Potatoes<\/a><\/li><li><a href=\"#for-the-spring-sides\">For the Spring Sides<\/a><\/li><li><a href=\"#for-bread\">For Bread<\/a><\/li><li><a href=\"#for-dessert\">For Dessert<\/a><\/li><li><a href=\"#ingredients-for-the-ham-glaze\">Ingredients for the Ham Glaze<\/a><\/li><li><a href=\"#instructions\">Instructions<\/a><\/li><li><a href=\"#ham-tips\">Ham Tips<\/a><\/li><li><a href=\"#roasted-asparagus-with-lemon\">Roasted Asparagus With Lemon<\/a><\/li><li><a href=\"#honey-glazed-carrots\">Honey-Glazed Carrots<\/a><\/li><li><a href=\"#creamy-mashed-potatoes\">Creamy Mashed Potatoes<\/a><\/li><li><a href=\"#other-great-sides-for-easter-ham-dinner\">Other Great Sides for Easter Ham Dinner<\/a><\/li><li><a href=\"#carrot-cake\">Carrot Cake<\/a><\/li><li><a href=\"#easy-cheesecake-bites\">Easy Cheesecake Bites<\/a><\/li><li><a href=\"#pie-option\">Pie Option<\/a><\/li><li><a href=\"#1-day-ahead\">1 Day Ahead<\/a><\/li><li><a href=\"#morning-of-easter\">Morning of Easter<\/a><\/li><li><a href=\"#last-hour\">Last Hour<\/a><\/li><li><a href=\"#build-the-plate-for-color\">Build the Plate for Color<\/a><\/li><li><a href=\"#keep-portions-comfortable\">Keep Portions Comfortable<\/a><\/li><li><a href=\"#use-one-fresh-element\">Use One Fresh Element<\/a><\/li><li><a href=\"#why-is-ham-eaten-at-easter\">Why is ham eaten at Easter?<\/a><\/li><li><a href=\"#what-is-the-most-common-food-eaten-on-easter\">What is the most common food eaten on Easter?<\/a><\/li><li><a href=\"#what-are-good-sides-for-easter-ham-dinner\">What are good sides for Easter ham dinner?<\/a><\/li><li><a href=\"#what-do-you-traditionally-eat-at-easter\">What do you traditionally eat at Easter?<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Why This Easter Dinner Menu Works<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"it-balances-rich-and-fresh\">It Balances Rich and Fresh<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A good <strong>Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/strong> needs contrast. Ham is salty, savory, and often sweet-glazed, so the best sides are usually spring vegetables and simple starches. Current Easter side collections consistently pair ham with asparagus, carrots, peas, potatoes, and rolls.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"it-feels-traditional-without-being-complicated\">It Feels Traditional Without Being Complicated<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This menu keeps the holiday spirit strong, but it avoids an overloaded table. You get:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>glazed Easter ham<\/li>\n\n\n\n<li>one creamy potato side<\/li>\n\n\n\n<li>two spring vegetables<\/li>\n\n\n\n<li>bread or rolls<\/li>\n\n\n\n<li>one easy dessert<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">That is enough variety to feel special without creating kitchen chaos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Full Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"main-dish-brown-sugar-mustard-ham\">Main Dish: Brown Sugar Mustard Ham<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A baked ham with a sweet-savory glaze is still one of the most common Easter mains. Allrecipes\u2019 current Easter ham recipe uses a brown sugar and mustard flavor profile, which matches what many families expect from a classic Easter table.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"spring-side-1-roasted-asparagus\">Spring Side 1: Roasted Asparagus<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Asparagus is one of the clearest spring vegetables, and it appears often in current Easter menus because it is seasonal, fast, and fresh-tasting next to ham.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"spring-side-2-honey-glazed-carrots\">Spring Side 2: Honey-Glazed Carrots<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Carrots bring sweetness and color, and they pair naturally with a salty ham. They are also one of the most commonly recommended Easter vegetable sides.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"comfort-side-creamy-potatoes\">Comfort Side: Creamy Potatoes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Potatoes are almost a holiday requirement with ham. Taste of Home and The Kitchn both place potato dishes among the most reliable Easter pairings.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"bread-soft-dinner-rolls-or-biscuits\">Bread: Soft Dinner Rolls or Biscuits<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A bread basket rounds out the plate and helps with glaze, butter, and pan juices.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"dessert-carrot-cake-or-easy-holiday-pie\">Dessert: Carrot Cake or Easy Holiday Pie<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Carrot cake remains one of the most recognizable Easter desserts in current roundups, though pies and light mousse-style desserts also show up often.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Easter Dinner Menu Shopping List<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-the-ham\">For the Ham<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>1 fully cooked bone-in ham, about 8 to 10 pounds<\/li>\n\n\n\n<li>1 cup brown sugar<\/li>\n\n\n\n<li>2 tablespoons Dijon mustard<\/li>\n\n\n\n<li>2 tablespoons maple syrup or honey<\/li>\n\n\n\n<li>1 tablespoon apple cider vinegar<\/li>\n\n\n\n<li>1\/2 teaspoon ground black pepper<\/li>\n\n\n\n<li>1\/4 teaspoon ground cloves, optional<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-the-potatoes\">For the Potatoes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>3 pounds Yukon Gold or russet potatoes<\/li>\n\n\n\n<li>4 tablespoons butter<\/li>\n\n\n\n<li>3\/4 cup milk or cream<\/li>\n\n\n\n<li>salt<\/li>\n\n\n\n<li>black pepper<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-the-spring-sides\">For the Spring Sides<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>2 bunches asparagus<\/li>\n\n\n\n<li>1 1\/2 pounds carrots<\/li>\n\n\n\n<li>olive oil<\/li>\n\n\n\n<li>honey<\/li>\n\n\n\n<li>garlic powder<\/li>\n\n\n\n<li>parsley<\/li>\n\n\n\n<li>lemon<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-bread\">For Bread<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>dinner rolls or biscuits<\/li>\n\n\n\n<li>butter<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-dessert\">For Dessert<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Pick one simple finish:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>carrot cake<\/li>\n\n\n\n<li>cheesecake bites<\/li>\n\n\n\n<li>pumpkin-style pie if using a make-ahead favorite from your site<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For a ready-made dessert link from your site, <a href=\"https:\/\/inasrecipes.com\/?s=Strawberry+Crunch+Cheesecake\">Strawberry Crunch Cheesecake Bites works<\/a> well as a colorful holiday sweet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Make the Ham for This Easter Dinner Menu<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ingredients-for-the-ham-glaze\">Ingredients for the Ham Glaze<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>1 cup brown sugar<\/li>\n\n\n\n<li>2 tablespoons Dijon mustard<\/li>\n\n\n\n<li>2 tablespoons maple syrup or honey<\/li>\n\n\n\n<li>1 tablespoon apple cider vinegar<\/li>\n\n\n\n<li>black pepper to taste<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"instructions\">Instructions<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Preheat the oven to 325\u00b0F.<\/li>\n\n\n\n<li>Place the ham cut-side down in a roasting pan.<\/li>\n\n\n\n<li>Cover loosely with foil and warm according to package timing, usually about 10 to 15 minutes per pound for a fully cooked ham.<\/li>\n\n\n\n<li>In a bowl, mix the brown sugar, Dijon mustard, maple syrup, vinegar, and pepper.<\/li>\n\n\n\n<li>During the last 30 to 40 minutes of baking, brush the glaze over the ham.<\/li>\n\n\n\n<li>Return the ham to the oven uncovered so the glaze can caramelize.<\/li>\n\n\n\n<li>Rest for 15 minutes before slicing.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Sweet brown sugar glaze and mustard remain one of the most common Easter ham flavor combinations in current recipe coverage.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ham-tips\">Ham Tips<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Score the surface lightly for better glaze coverage.<\/li>\n\n\n\n<li>Do not overbake, since most Easter hams are already cooked.<\/li>\n\n\n\n<li>Save the bone for soup later.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you want another savory crowd-pleaser on your site,<a href=\"https:\/\/inasrecipes.com\/americas-most-beloved-classic-meatloaf-recipe\/\">America\u2019s Most Beloved Classic Meatloaf Recipe<\/a>  has the same comfort-food energy.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"683\" data-pin-url=\"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/?tp_image_id=4106\" data-pin-title=\"Easter Dinner Menu (Ham + Spring Sides + Dessert)\" data-pin-description=\"Easter Dinner Menu (Ham + Spring Sides + Dessert)\" src=\"https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/ece0dbb5-6dbd-4dc3-8fdc-8da63707d8d8-1024x683.png\" alt=\"\" class=\"wp-image-4106\" title=\"\" srcset=\"https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/ece0dbb5-6dbd-4dc3-8fdc-8da63707d8d8-1024x683.png 1024w, https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/ece0dbb5-6dbd-4dc3-8fdc-8da63707d8d8-300x200.png 300w, https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/ece0dbb5-6dbd-4dc3-8fdc-8da63707d8d8-768x512.png 768w, https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/ece0dbb5-6dbd-4dc3-8fdc-8da63707d8d8.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Best Spring Sides for an Easter Ham Dinner<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"roasted-asparagus-with-lemon\">Roasted Asparagus With Lemon<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Roast asparagus at 425\u00b0F with olive oil, salt, and pepper until just tender, then finish with lemon juice. Asparagus is one of the most common spring sides paired with Easter ham in current menu collections.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"honey-glazed-carrots\">Honey-Glazed Carrots<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Toss sliced carrots with butter or olive oil, honey, and a little salt, then roast until tender. This side adds both sweetness and color, which is why it shows up so often on Easter tables.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"creamy-mashed-potatoes\">Creamy Mashed Potatoes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Boil peeled potatoes until fork-tender, then mash with butter and warm milk. Ham loves something creamy beside it, and potatoes are one of the most dependable Easter partners.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"other-great-sides-for-easter-ham-dinner\">Other Great Sides for Easter Ham Dinner<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you want to vary the menu, these also work well:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>scalloped potatoes<\/li>\n\n\n\n<li>peas<\/li>\n\n\n\n<li>green beans<\/li>\n\n\n\n<li>deviled eggs<\/li>\n\n\n\n<li>spring salad<\/li>\n\n\n\n<li>roasted radishes<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Taste of Home and Allrecipes both feature these kinds of supporting dishes in Easter dinner menus and side collections.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Do You Traditionally Eat at Easter?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Traditional Easter foods vary by country and family, but common Easter meals often include ham, lamb, eggs, breads, spring vegetables, and seasonal desserts. In U.S. menu roundups, glazed ham is especially common, while carrot cake and spring vegetables appear again and again.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For this menu, the traditional lineup looks like this:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>glazed ham<\/li>\n\n\n\n<li>potatoes<\/li>\n\n\n\n<li>asparagus<\/li>\n\n\n\n<li>carrots<\/li>\n\n\n\n<li>rolls<\/li>\n\n\n\n<li>dessert<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">That gives you a plate that feels classic, colorful, and very easy to serve.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dessert Ideas for Your Easter Dinner Menu<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"carrot-cake\">Carrot Cake<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Carrot cake is one of the most recognizable Easter desserts in current recipe roundups. It fits the season, looks festive, and pairs nicely with a ham dinner because it is sweet but still grounded by spice and cream cheese frosting.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"easy-cheesecake-bites\">Easy Cheesecake Bites<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you want a make-ahead dessert that is easier to portion, use <a href=\"https:\/\/inasrecipes.com\/strawberry-crunch-cheesecake-bites\/\">Strawberry Crunch Cheesecake Bites<\/a>. They are grab-and-go, bright, and easy for buffet-style serving.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"pie-option\">Pie Option<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If your family leans more toward pie, <a href=\"https:\/\/inasrecipes.com\/crustless-pumpkin-pie-creamy-light-naturally-glute\/\">Crustless Pumpkin Pie<\/a> is not traditional for Easter, but it is easy, reliable, and crowd-friendly if you already know your guests love it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check out<a href=\"https:\/\/inasrecipes.com\/its-time-to-eat-peppermint-cookies\/\"> It\u2019s Time to Eat Peppermint Cookies<\/a>  if you want a playful bake-sale-style treat for kids, though for Easter I would stay with cheesecake bites or cake as the main finish.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Prep This Easter Dinner Menu Ahead of Time<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1-day-ahead\">1 Day Ahead<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>mix the ham glaze<\/li>\n\n\n\n<li>wash and trim asparagus<\/li>\n\n\n\n<li>peel and cut carrots<\/li>\n\n\n\n<li>bake dessert<\/li>\n\n\n\n<li>set the table<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"morning-of-easter\">Morning of Easter<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>season vegetables<\/li>\n\n\n\n<li>prep potatoes<\/li>\n\n\n\n<li>remove ham from fridge ahead of time if package directions allow<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"last-hour\">Last Hour<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>bake ham<\/li>\n\n\n\n<li>roast carrots<\/li>\n\n\n\n<li>roast asparagus<\/li>\n\n\n\n<li>mash potatoes<\/li>\n\n\n\n<li>warm rolls<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This schedule keeps oven time manageable and keeps the vegetables from going limp.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Serving Tips for Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"build-the-plate-for-color\">Build the Plate for Color<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A good Easter plate should look like spring:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pink glazed ham<\/li>\n\n\n\n<li>green asparagus<\/li>\n\n\n\n<li>orange carrots<\/li>\n\n\n\n<li>creamy potatoes<\/li>\n\n\n\n<li>light dessert<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"keep-portions-comfortable\">Keep Portions Comfortable<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Holiday meals can get heavy fast. Serve a moderate ham portion and let the vegetable sides do more of the work.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"use-one-fresh-element\">Use One Fresh Element<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Even if you keep the menu classic, one bright element like lemon on the asparagus or a crisp green salad helps the whole dinner feel lighter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For another easy side-ish idea from your site, <a href=\"https:\/\/inasrecipes.com\/crispy-perfection-healthy-easy-low-calorie-ha\/\">Crispy Perfection: Healthy &amp; Easy Low-Calorie Hash Browns!<\/a> could work for a brunch-style Easter spread, though I would keep mashed or scalloped potatoes for a more traditional dinner.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ: Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"why-is-ham-eaten-at-easter\">Why is ham eaten at Easter?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Ham became tied to Easter for a mix of practical and cultural reasons. In Europe and later the United States, pigs were often slaughtered in fall, cured over winter, and ready by spring. That timing made ham a natural choice for Easter meals, especially as it became more affordable than lamb for many families.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-the-most-common-food-eaten-on-easter\">What is the most common food eaten on Easter?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">There is no single universal Easter food everywhere, but in U.S. Easter dinner coverage, ham is one of the most common centerpieces, while eggs, spring vegetables, potatoes, and carrot cake are also strongly associated with the holiday.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-are-good-sides-for-easter-ham-dinner\">What are good sides for Easter ham dinner?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Some of the best sides for Easter ham dinner are potatoes, asparagus, carrots, green beans, peas, rolls, and deviled eggs. Those pairings appear repeatedly in current Easter side guides.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-do-you-traditionally-eat-at-easter\">What do you traditionally eat at Easter?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Traditional Easter meals often include ham or lamb, eggs, breads, seasonal vegetables, and dessert. In many American homes, a typical Easter dinner is glazed ham with potatoes, spring vegetables, rolls, and carrot cake or another holiday dessert.<\/p>\n\n\n<svg aria-hidden=\"true\" style=\"position: absolute;width: 0;height: 0;overflow: hidden\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<defs>\n<symbol viewbox=\"9 9 46 42\" id=\"wpt-star-full\">\n\t<path d=\"m46.3 52-14.4-9.5-14.4 9.4L22 35.3 8.7 24.5l17.1-.9 6.2-16 6 16 17.2 1-13.4 10.7z\" \/>\n<\/symbol>\n<\/defs>\n<\/svg>\n<a class=\"button tasty-recipes-print-button tasty-recipes-no-print tasty-recipes-print-above-card\" href=\"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/print\/4105\/\">Print<\/a><span class=\"tasty-recipes-jump-target\" id=\"tasty-recipes-4105-jump-target\" style=\"display:block;padding-top:2px;margin-top:-2px;\"><\/span><div id=\"tasty-recipes-4105\" data-tr-id=\"4105\" class=\"tasty-recipes tasty-recipes-4105 tasty-recipes-display tasty-recipes-has-image\" style=\"border-color: #EEF1E6 !important;\" data-tasty-recipes-customization=\"primary-color.border-color\">\n\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"display: none;\"><defs><symbol id=\"tasty-recipes-icon-clock\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>clock<\/title> <desc>clock icon<\/desc><path d=\"M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12.5 8H11v6l4.75 2.85.75-1.23-4-2.37V8zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z\" fill=\"currentColor\" \/><\/symbol><symbol id=\"tasty-recipes-icon-cutlery\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>cutlery<\/title> <desc>cutlery icon<\/desc><path d=\"M11 9H9V2H7v7H5V2H3v7c0 2.12 1.66 3.84 3.75 3.97V22h2.5v-9.03C11.34 12.84 13 11.12 13 9V2h-2v7zm5-3v8h2.5v8H21V2c-2.76 0-5 2.24-5 4z\" fill=\"currentColor\" \/><\/symbol><symbol id=\"tasty-recipes-icon-flag\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>flag<\/title> <desc>flag icon<\/desc><path d=\"M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z\" fill=\"currentColor\"\/><\/symbol><symbol id=\"tasty-recipes-icon-folder\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>folder<\/title> <desc>folder icon<\/desc><path d=\"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z\" fill=\"currentColor\" \/><\/symbol><symbol id=\"tasty-recipes-icon-instagram\" viewBox=\"0 0 448 512\"><title>instagram<\/title> <desc>instagram icon<\/desc><path fill=\"currentColor\" d=\"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z\"><\/path><\/symbol><symbol id=\"tasty-recipes-icon-pinterest\" viewBox=\"0 0 384 512\"><title>pinterest<\/title> <desc>pinterest icon<\/desc><path fill=\"currentColor\" d=\"M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z\" \/><\/symbol><symbol id=\"tasty-recipes-icon-facebook\" viewBox=\"0 0 448 512\"><title>facebook<\/title> <desc>facebook icon<\/desc><path fill=\"currentColor\" d=\"M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z\" \/><\/symbol><symbol id=\"tasty-recipes-icon-print\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>print<\/title> <desc>print icon<\/desc><path d=\"M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3zm-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12V3z\" fill=\"currentColor\" \/><\/symbol><symbol id=\"tasty-recipes-icon-squares\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><title>squares<\/title> <desc>squares icon<\/desc><path d=\"M22 9V7h-2V5c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-2h2v-2h-2v-2h2v-2h-2V9h2zm-4 10H4V5h14v14zM6 13h5v4H6zm6-6h4v3h-4zM6 7h5v5H6zm6 4h4v6h-4z\" fill=\"currentColor\" \/><\/symbol><symbol id=\"tasty-recipes-icon-heart-regular\" viewBox=\"0 0 512 512\"><title>heart<\/title> <desc>heart icon<\/desc><path fill=\"currentColor\" d=\"M458.4 64.3C400.6 15.7 311.3 23 256 79.3 200.7 23 111.4 15.6 53.6 64.3-21.6 127.6-10.6 230.8 43 285.5l175.4 178.7c10 10.2 23.4 15.9 37.6 15.9 14.3 0 27.6-5.6 37.6-15.8L469 285.6c53.5-54.7 64.7-157.9-10.6-221.3zm-23.6 187.5L259.4 430.5c-2.4 2.4-4.4 2.4-6.8 0L77.2 251.8c-36.5-37.2-43.9-107.6 7.3-150.7 38.9-32.7 98.9-27.8 136.5 10.5l35 35.7 35-35.7c37.8-38.5 97.8-43.2 136.5-10.6 51.1 43.1 43.5 113.9 7.3 150.8z\"><\/path><\/symbol><symbol id=\"tasty-recipes-icon-heart-solid\" viewBox=\"0 0 512 512\"><title>heart solid<\/title> <desc>heart solid icon<\/desc><path fill=\"currentColor\" d=\"M462.3 62.6C407.5 15.9 326 24.3 275.7 76.2L256 96.5l-19.7-20.3C186.1 24.3 104.5 15.9 49.7 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z\"><\/path><\/symbol><\/defs><\/svg>\n<header class=\"tasty-recipes-entry-header\" style=\"background: #EEF1E6 !important;\" data-tasty-recipes-customization=\"primary-color.background\">\n\t\t\t<div class=\"tasty-recipes-image\">\n\t\t\t<img decoding=\"async\" style=\"border-color: #EEF1E6 !important;\" data-tasty-recipes-customization=\"primary-color.border-color\" width=\"150\" height=\"150\" src=\"https:\/\/inasrecipes.com\/wp-content\/uploads\/2026\/03\/image_1200x800_1773417061475-150x150.webp\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" data-pin-nopin=\"true\" data-pin-description=\"Easter Dinner Menu (Ham + Spring Sides + Dessert)\" data-pin-title=\"Easter Dinner Menu (Ham + Spring Sides + Dessert)\" data-pin-url=\"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/?tp_image_id=4107\" title=\"\">\t\t<\/div>\n\t\t<h2 class=\"tasty-recipes-title\" style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"h2-color.color h2-transform.text-transform\">Easter Dinner Menu (Ham + Spring Sides + Dessert)<\/h2>\n\t<hr style=\"border-color: #F4F1E8 !important; background-color: #F4F1E8 !important;\" data-tasty-recipes-customization=\"secondary-color.border-color secondary-color.background-color\">\n\t\t\t<div class=\"tasty-recipes-rating\">\n\t\t\t\t\t\t\t<p><svg aria-hidden=\"true\" style=\"position: absolute;width: 0;height: 0;overflow: hidden\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<defs>\n<symbol viewbox=\"9 9 46 42\" id=\"wpt-star-full\">\n\t<path d=\"m46.3 52-14.4-9.5-14.4 9.4L22 35.3 8.7 24.5l17.1-.9 6.2-16 6 16 17.2 1-13.4 10.7z\" \/>\n<\/symbol>\n<\/defs>\n<\/svg>\n<span class=\"tasty-recipes-ratings-buttons tasty-recipes-no-ratings-buttons\"\tdata-tr-default-rating=\"0\"\t>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"5\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t5 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"4\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t4 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"3\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t3 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"2\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t2 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"1\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t1 Star\t\t\t<\/span>\t\t<\/i>\t<\/span><\/span><\/p>\n\t\t\t\t\t\t\t\t\t\t<p><span style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\" class=\"rating-label\">No reviews<\/span><\/p>\n\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"tasty-recipes-details\">\n\t\t\t<ul>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"author\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAuthor:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-author-name\">Inas Recipes<\/span>\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"total-time\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg viewBox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-clock\" style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"icon-color.color\"><\/use><\/svg>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tTotal Time:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-total-time\">2 hours 20 minutes<\/span>\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"yield\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg viewBox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-cutlery\" style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"icon-color.color\"><\/use><\/svg>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tYield:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-yield\"><span data-amount=\"10\">10<\/span> servings <span class=\"tasty-recipes-yield-scale\"><span data-amount=\"1\">1<\/span>x<\/span><\/span>\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t<\/div>\n\t<\/header>\n\n<div class=\"tasty-recipes-entry-content\">\n\n\t\t<div class=\"tasty-recipes-buttons\">\n\t\t\t\t<div class=\"tasty-recipes-button-wrap\">\n\t\t\t\n<a class=\"button tasty-recipes-print-button tasty-recipes-no-print\" href=\"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/print\/4105\/\" target=\"_blank\" data-tasty-recipes-customization=\"\">\n\t\t\t<svg viewBox=\"0 0 24 24\" class=\"svg-print\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-print\"><\/use><\/svg>\n\t\tPrint Recipe<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t<div class=\"tasty-recipes-button-wrap\">\n\t\t\t\n<a class=\"share-pin button\" data-pin-custom=\"true\" data-href=\"https:\/\/www.pinterest.com\/pin\/create\/bookmarklet\/?url=https%3A%2F%2Finasrecipes.com%2Ffr%2Feaster-dinner-menu-ham-spring-sides-dessert%2F\" href=\"https:\/\/www.pinterest.com\/pin\/create\/bookmarklet\/?url=https%3A%2F%2Finasrecipes.com%2Ffr%2Feaster-dinner-menu-ham-spring-sides-dessert%2F\" data-tasty-recipes-customization=\"\">\n\t\t\t<svg viewBox=\"0 0 24 24\" class=\"svg-print\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-pinterest\"><\/use><\/svg>\n\t\tPin Recipe<\/a>\n<script>\n\tconst share_pin_buttons = document.getElementsByClassName( 'share-pin button' );\n\tif ( share_pin_buttons ) {\n\t\tfor ( let share_key = 0; share_key < share_pin_buttons.length; share_key++ ) {\n\t\t\tshare_pin_buttons[share_key].addEventListener( 'click', (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\twindow.open(e.target.dataset.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=500,height=500');\n\t\t\t\treturn false;\n\t\t\t} );\n\t\t}\n\t}\n<\/script>\n\t\t<\/div>\n\t\t\t<\/div>\n\t\n\t\t\t<div class=\"tasty-recipes-description\">\n\t\t\t<h3 style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Description<\/h3>\n\t\t\t<div class=\"tasty-recipes-description-body\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t\t<p>This Classic Holiday Ham Dinner is a comforting family meal featuring a sweet glazed ham, creamy mashed potatoes, roasted asparagus, honey-glazed carrots, and warm rolls. It\u2019s perfect for holidays, Sunday dinners, or special gatherings.<\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\n\t\t\t<hr style=\"border-color: #F4F1E8 !important; background-color: #F4F1E8 !important;\" data-tasty-recipes-customization=\"secondary-color.border-color secondary-color.background-color\">\n\t\n\t\t\t<div class=\"tasty-recipes-ingredients\">\n\t\t\t<div class=\"tasty-recipes-ingredients-header\">\n\t\t\t\t<div class=\"tasty-recipes-ingredients-clipboard-container\">\n\t\t\t\t\t<h3 style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Ingredients<\/h3>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"tasty-recipes-units-scale-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"tasty-recipes-scale-container\">\n\t\t\t\t\t\t\t<span class=\"tasty-recipes-scale-label\">Scale<\/span>\n\t\t\t\t\t\t\t<button class=\"tasty-recipes-scale-button tasty-recipes-scale-button-active\" data-amount=\"1\" type=\"button\">1x<\/button><button class=\"tasty-recipes-scale-button\" data-amount=\"2\" type=\"button\">2x<\/button><button class=\"tasty-recipes-scale-button\" data-amount=\"3\" type=\"button\">3x<\/button>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t<div style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t\t<ul>\n<li><span data-amount=\"1\">1<\/span> fully cooked bone-in ham (<span data-amount=\"8\">8<\/span>\u2013<span data-amount=\"10\">10<\/span> pounds)<\/li>\n<li><span data-amount=\"1\" data-unit=\"cup\">1 cup<\/span> brown sugar<\/li>\n<li><span data-amount=\"2\" data-unit=\"tablespoon\">2 tablespoons<\/span> Dijon mustard<\/li>\n<li><span data-amount=\"2\" data-unit=\"tablespoon\">2 tablespoons<\/span> maple syrup or honey<\/li>\n<li><span data-amount=\"1\" data-unit=\"tablespoon\">1 tablespoon<\/span> apple cider vinegar<\/li>\n<li><span data-amount=\"3\">3<\/span> pounds potatoes<\/li>\n<li><span data-amount=\"2\">2<\/span> bunches asparagus<\/li>\n<li><span data-amount=\"1.5\">1\u00bd<\/span> pounds carrots<\/li>\n<li>Rolls<\/li>\n<li>Dessert of choice<\/li>\n<\/ul>\n<!--INSIDE_INGREDIENTS-->\t\t\t<\/div>\n\t\t\t<div class=\"tasty-recipes-cook-mode\">\n\t<div class=\"tasty-recipes-cook-mode__container\">\n\t\t<label class=\"tasty-recipes-cook-mode__switch\">\n\t\t\t<input type=\"checkbox\" id=\"tasty_recipes_6add546f99394_cookmode\">\n\t\t\t<span class=\"tasty-recipes-cook-mode__switch-slider tasty-recipes-cook-mode__switch-round\"\n\t\t\t\tdata-tasty-recipes-customization=\"button-color.background button-text-color.color\"><\/span>\n\t\t<\/label>\n\t\t<label for=\"tasty_recipes_6add546f99394_cookmode\">\n\t\t\t<span class=\"tasty-recipes-cook-mode__label\">Cook Mode<\/span>\n\t\t\t<span class=\"tasty-recipes-cook-mode__helper\">\n\t\t\t\tPrevent your screen from going dark\t\t\t<\/span>\n\t\t<\/label>\n\t<\/div>\n<\/div>\n\t\t<\/div>\n\t\n\t\t\t<hr style=\"border-color: #F4F1E8 !important; background-color: #F4F1E8 !important;\" data-tasty-recipes-customization=\"secondary-color.border-color secondary-color.background-color\">\n\t\n\t\t<div class=\"tasty-recipes-instructions\">\n\t\t<div class=\"tasty-recipes-instructions-header\">\n\t\t\t<h3 style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Instructions<\/h3>\n\t\t\t\t\t<\/div>\n\t\t<div style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t<ol>\n<li id=\"instruction-step-1\">Preheat oven according to ham package directions and place the ham in a roasting pan.<\/li>\n<li id=\"instruction-step-2\">Mix brown sugar, Dijon mustard, maple syrup (or honey), and apple cider vinegar to make the glaze.<\/li>\n<li id=\"instruction-step-3\">Bake the ham and brush with glaze during the final portion of cooking until caramelized.<\/li>\n<li id=\"instruction-step-4\">Peel and boil the potatoes until tender, then mash with butter, milk, salt, and pepper.<\/li>\n<li id=\"instruction-step-5\">Toss asparagus with olive oil, salt, pepper, and a squeeze of lemon, then roast until tender.<\/li>\n<li id=\"instruction-step-6\">Roast carrots with a drizzle of honey or glaze until soft and lightly caramelized.<\/li>\n<li id=\"instruction-step-7\">Warm the rolls in the oven.<\/li>\n<li id=\"instruction-step-8\">Serve the glazed ham sliced with mashed potatoes, roasted vegetables, warm rolls, and your favorite dessert.<\/li>\n<\/ol>\n\t\t<\/div>\n\t<\/div>\n\t\n\t\n\t\t\n\t\n\t\t\t<div class=\"tasty-recipes-notes\" style=\"background-color: #F4F1E8 !important;\" data-tasty-recipes-customization=\"secondary-color.background-color\">\n\t\t\t<h3 style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Notes<\/h3>\n\t\t\t<div class=\"tasty-recipes-notes-body\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t\t<p>Leftover ham can be used for sandwiches, soups, or breakfast scrambles. Store leftovers in the refrigerator for up to 4 days.<\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\n\t\t\t<div class=\"tasty-recipes-other-details\" style=\"background-color: #F4F1E8 !important;\" data-tasty-recipes-customization=\"secondary-color.background-color\">\n\t\t\t<ul>\n\t\t\t\t<li class=\"prep-time\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\"><svg viewbox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-clock\"><\/use><\/svg>Prep Time:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-prep-time\">20 minutes<\/span><\/li><li class=\"cook-time\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\"><svg viewbox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-clock\"><\/use><\/svg>Cook Time:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-cook-time\">2 hours<\/span><\/li><li class=\"category\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\"><svg viewbox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-folder\"><\/use><\/svg>Category:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-category\">Main Course<\/span><\/li><li class=\"method\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\"><svg viewbox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-squares\"><\/use><\/svg>Method:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-method\">Roasted<\/span><\/li><li class=\"cuisine\"><span class=\"tasty-recipes-label\" style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"detail-label-color.color\"><svg viewbox=\"0 0 24 24\" class=\"detail-icon\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-flag\"><\/use><\/svg>Cuisine:<\/span> <span style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-cuisine\">American<\/span><\/li>\t\t\t<\/ul>\n\t\t<\/div>\n\t\n\t\n\t\n\t\t\t\t<div class=\"tasty-recipes-nutrition\">\n\t\t\t<h3 style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Nutrition<\/h3>\n\t\t\t<ul>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Serving Size:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-serving-size\">1 serving<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Calories:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-calories\">620<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Sugar:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-sugar\">10g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Sodium:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-sodium\">1450mg<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Fat:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-fat\">38g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Saturated Fat:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-saturated-fat\">12g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Unsaturated Fat:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-unsaturated-fat\">22g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Trans Fat:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-trans-fat\">0g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Carbohydrates:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-carbohydrates\">34g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Fiber:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-fiber\">4g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Protein:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-protein\">32g<\/span><\/li>\n\t\t\t\t\t\t\t\t\t<li><strong class=\"tasty-recipes-label\" style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\">Cholesterol:<\/strong> <span style=\"color: #292A25 !important;\" data-tasty-recipes-customization=\"body-color.color\" class=\"tasty-recipes-cholesterol\">95mg<\/span><\/li>\n\t\t\t\t\t\t\t<\/ul>\n\t\t\t<\/div>\n\t\n\t\n\t<footer class=\"tasty-recipes-entry-footer\" style=\"background: #EEF1E6 !important;\" data-tasty-recipes-customization=\"primary-color.background\">\n\t\t<div class=\"tasty-recipes-footer-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t<svg viewBox=\"0 0 24 24\" class=\"svg-instagram\" aria-hidden=\"true\" style=\"color: #314C3C !important;\" data-tasty-recipes-customization=\"footer-icon-color.color\"><use xlink:href=\"#tasty-recipes-icon-instagram\"><\/use><\/svg>\n\t\t\t\t\t\t\t\t\t\t<div class=\"tasty-recipes-footer-copy\">\n\t\t\t\t<h3 style=\"color: #283C30 !important;\" data-tasty-recipes-customization=\"footer-heading-color.color h3-transform.text-transform footer-heading.innerText\">Did you make this recipe?<\/h3>\n\t\t\t\t<div style=\"color: #374B3E !important;\" data-tasty-recipes-customization=\"footer-description-color.color footer-description.innerHTML\"><p>Share a photo and tag us \u2014 we can&#8217;t wait to see what you&#8217;ve made!<\/p>\n<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/footer>\n<\/div>\n\n\n\n<script>\nwindow.trCommon={\"minRating\":6,\"ajaxurl\":\"https:\\\/\\\/inasrecipes.com\\\/wp-admin\\\/admin-ajax.php\",\"ratingNonce\":\"\",\"postId\":4104};\nwindow.TastyRecipes = window.TastyRecipes || {};\n\nwindow.TastyRecipes.smoothScroll = {\ninit() {\ndocument.addEventListener( 'click', ( e ) => {\nlet anchor = e.target;\nif ( anchor.tagName !== 'A' ) {\nanchor = anchor.closest( 'a.tasty-recipes-scrollto' );\n}\n\nif ( ! anchor || ! anchor.classList.contains( 'tasty-recipes-scrollto' ) ) {\nreturn;\n}\n\nconst elementHref = anchor.getAttribute( 'href' );\nif ( ! elementHref ) {\nreturn;\n}\n\ne.preventDefault();\nthis.goToSelector( elementHref );\n});\n},\ngoToSelector( selector ) {\nconst element = document.querySelector( selector );\nif ( ! element ) {\nreturn;\n}\nelement.scrollIntoView( { behavior: 'smooth' } );\n}\n};\n\ndocument.addEventListener(\n'DOMContentLoaded',\n() => window.TastyRecipes.smoothScroll.init()\n);\n\n(function(){\n\n\nvar bothEquals = function( d1, d2, D ) {\nvar ret = 0;\nif (d1<=D) {\nret++;\n}\nif (d2<=D) {\nret++;\n}\nreturn ret === 2;\n};\n\nvar frac =function frac(x,D,mixed){var n1=Math.floor(x),d1=1;var n2=n1+1,d2=1;if(x!==n1){while(bothEquals(d1,d2,D)){var m=(n1+n2)\/(d1+d2);if(x===m){if(d1+d2<=D){d1+=d2;n1+=n2;d2=D+1}else if(d1>d2){d2=D+1;}else {d1=D+1;}break}else if(x<m){n2=n1+n2;d2=d1+d2}else{n1=n1+n2;d1=d1+d2}}}if(d1>D){d1=d2;n1=n2}if(!mixed){return[0,n1,d1];}var q=Math.floor(n1\/d1);return[q,n1-q*d1,d1]};frac.cont=function cont(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-A<5e-8){break;}B=1\/(B-A);P_2=P_1;P_1=P;Q_2=Q_1;Q_1=Q}if(Q>D){if(Q_1>D){Q=Q_2;P=P_2}else{Q=Q_1;P=P_1}}if(!mixed){return[0,sgn*P,Q];}var q=Math.floor(sgn*P\/Q);return[q,sgn*P-q*Q,Q]};\n\n\nwindow.tastyRecipesVulgarFractions = JSON.parse(decodeURIComponent(\"%7B%22%C2%BC%22%3A%221%2F4%22%2C%22%C2%BD%22%3A%221%2F2%22%2C%22%C2%BE%22%3A%223%2F4%22%2C%22%E2%85%93%22%3A%221%2F3%22%2C%22%E2%85%94%22%3A%222%2F3%22%2C%22%E2%85%95%22%3A%221%2F5%22%2C%22%E2%85%96%22%3A%222%2F5%22%2C%22%E2%85%97%22%3A%223%2F5%22%2C%22%E2%85%98%22%3A%224%2F5%22%2C%22%E2%85%99%22%3A%221%2F6%22%2C%22%E2%85%9A%22%3A%225%2F6%22%2C%22%E2%85%9B%22%3A%221%2F8%22%2C%22%E2%85%9C%22%3A%223%2F8%22%2C%22%E2%85%9D%22%3A%225%2F8%22%2C%22%E2%85%9E%22%3A%227%2F8%22%7D\"));\n\nwindow.tastyRecipesFormatAmount = function(amount, el) {\nif ( parseFloat( amount ) === parseInt( amount ) ) {\nreturn amount;\n}\nvar roundType = 'frac';\nif (typeof el.dataset.amountShouldRound !== 'undefined') {\nif ('false' !== el.dataset.amountShouldRound) {\nif ( 'number' === el.dataset.amountShouldRound ) {\nroundType = 'number';\n} else if ('frac' === el.dataset.amountShouldRound) {\nroundType = 'frac';\n} else if ('vulgar' === el.dataset.amountShouldRound) {\nroundType = 'vulgar';\n} else {\nroundType = 'integer';\n}\n}\n}\nif ('number' === roundType) {\namount = Number.parseFloat(amount).toPrecision(2);\n} else if ('integer' === roundType) {\namount = Math.round(amount);\n} else if ('frac' === roundType || 'vulgar' === roundType) {\nvar denom = 8;\nif (typeof el.dataset.unit !== 'undefined') {\nvar unit = el.dataset.unit;\nif (['cups','cup','c'].includes(unit)) {\ndenom = 4;\nif (0.125 === amount) {\ndenom = 8;\n}\nif (\"0.1667\" === Number.parseFloat( amount ).toPrecision(4)) {\ndenom = 6;\n}\n}\nif (['tablespoons','tablespoon','tbsp'].includes(unit)) {\ndenom = 2;\n}\nif (['teaspoons','teaspoon','tsp'].includes(unit)) {\ndenom = 8;\n}\n}\nvar amountArray = frac.cont( amount, denom, true );\nvar newAmount = '';\nif ( amountArray[1] !== 0 ) {\nnewAmount = amountArray[1] + '\/' + amountArray[2];\nif ('vulgar' === roundType) {\nObject.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {\nif (newAmount === window.tastyRecipesVulgarFractions[vulgar]) {\nnewAmount = vulgar;\n}\n});\n}\n}\nif ( newAmount ) {\nnewAmount = ' ' + newAmount;\n}\nif ( amountArray[0] ) {\nnewAmount = amountArray[0] + newAmount;\n}\namount = newAmount;\n}\nreturn amount;\n};\n\n\nwindow.tastyRecipesUpdatePrintLink = () => {\n\nconst printButton = document.querySelector( '.tasty-recipes-print-button' );\n\n\nif ( ! printButton ) {\nreturn;\n}\n\nconst printURL = new URL( printButton.href );\nconst searchParams = new URLSearchParams( printURL.search );\n\nconst unitButton = document.querySelector( '.tasty-recipes-convert-button-active' );\nconst scaleButton = document.querySelector( '.tasty-recipes-scale-button-active' );\n\nlet unit = '';\nlet scale = '';\n\nif ( unitButton ) {\nunit = unitButton.dataset.unitType;\nsearchParams.delete('unit');\nsearchParams.set( 'unit', unit );\n}\n\nif ( scaleButton ) {\nscale = scaleButton.dataset.amount;\nsearchParams.set( 'scale', scale );\n}\n\nconst paramString = searchParams.toString();\nconst newURL = '' === paramString ? printURL.href : printURL.origin + printURL.pathname + '?' + paramString;\nconst printLinks = document.querySelectorAll( '.tasty-recipes-print-link' );\n\nprintLinks.forEach( ( el ) => {\nel.href = newURL;\n});\n\nconst printButtons = document.querySelectorAll( '.tasty-recipes-print-button' );\nprintButtons.forEach( ( el ) => {\nel.href = newURL;\n});\n};\n\n\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\n\nif ( ! window.location.href.includes( '\/print\/' ) ) {\nreturn;\n}\n\nconst searchParams = new URLSearchParams( window.location.search );\n\nconst unit = searchParams.get( 'unit' );\nconst scale = searchParams.get( 'scale' );\n\nif ( unit && ( 'metric' === unit || 'usc' === unit ) ) {\ndocument.querySelector( '.tasty-recipes-convert-button[data-unit-type=\"' + unit + '\"]' ).click();\n}\n\nif ( scale && Number(scale) > 0 ) {\ndocument.querySelector( '.tasty-recipes-scale-button[data-amount=\"' + Number(scale) + '\"]' ).click();\n}\n});\n}());\n\n(function(){\nvar buttonClass = 'tasty-recipes-scale-button',\nbuttonActiveClass = 'tasty-recipes-scale-button-active',\nbuttons = document.querySelectorAll('.tasty-recipes-scale-button');\nif ( ! buttons ) {\nreturn;\n}\n\nbuttons.forEach(function(button){\nbutton.addEventListener('click', function(event){\nevent.preventDefault();\nvar recipe = event.target.closest('.tasty-recipes');\nif ( ! recipe ) {\nreturn;\n}\nvar otherButtons = recipe.querySelectorAll('.' + buttonClass);\notherButtons.forEach(function(bt){\nbt.classList.remove(buttonActiveClass);\n});\nbutton.classList.add(buttonActiveClass);\n\n\nvar scalables = recipe.querySelectorAll('span[data-amount]');\nvar buttonAmount = parseFloat( button.dataset.amount );\nscalables.forEach(function(scalable){\nif (typeof scalable.dataset.amountOriginalType === 'undefined'\n&& typeof scalable.dataset.nfOriginal === 'undefined') {\nif (-1 !== scalable.innerText.indexOf('\/')) {\nscalable.dataset.amountOriginalType = 'frac';\n}\nif (-1 !== scalable.innerText.indexOf('.')) {\nscalable.dataset.amountOriginalType = 'number';\n}\nObject.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {\nif (-1 !== scalable.innerText.indexOf(vulgar)) {\nscalable.dataset.amountOriginalType = 'vulgar';\n}\n});\nif (typeof scalable.dataset.amountOriginalType !== 'undefined') {\nscalable.dataset.amountShouldRound = scalable.dataset.amountOriginalType;\n}\n}\nvar amount = parseFloat( scalable.dataset.amount ) * buttonAmount;\namount = window.tastyRecipesFormatAmount(amount, scalable);\nif ( typeof scalable.dataset.unit !== 'undefined' ) {\nif ( ! scalable.classList.contains('nutrifox-quantity') ) {\nif ( ! scalable.classList.contains('nutrifox-second-quantity') ) {\namount += ' ' + scalable.dataset.unit;\n}\n}\n}\nscalable.innerText = amount;\n});\n\nvar nonNumerics = recipe.querySelectorAll('[data-has-non-numeric-amount]');\nnonNumerics.forEach(function(nonNumeric){\nvar indicator = nonNumeric.querySelector('span[data-non-numeric-label]');\nif ( indicator ) {\nnonNumeric.removeChild(indicator);\n}\nif ( 1 !== buttonAmount ) {\nindicator = document.createElement('span');\nindicator.setAttribute('data-non-numeric-label', true);\nvar text = document.createTextNode(' (x' + buttonAmount + ')');\nindicator.appendChild(text);\nnonNumeric.appendChild(indicator);\n}\n});\n\nwindow.tastyRecipesUpdatePrintLink();\n});\n});\n}());\n\nwindow.TastyRecipes = window.TastyRecipes || {};\nwindow.TastyRecipes.cookMode = {\nwakeLockApi: false,\nwakeLock: false,\ncookModeSelector: '.tasty-recipes-cook-mode',\ninit() {\nif (\"wakeLock\" in navigator && \"request\" in navigator.wakeLock) {\nthis.wakeLockApi = navigator.wakeLock;\n}\n\nconst cookModes = document.querySelectorAll(this.cookModeSelector);\n\nif (cookModes.length > 0) {\nfor (const cookMode of cookModes) {\nif (this.wakeLockApi) {\ncookMode.querySelector('input[type=\"checkbox\"]').addEventListener(\"change\", event => {\nthis.checkboxChange(event.target);\n}, false);\n} else {\ncookMode.style.display = \"none\";\n}\n}\n}\n},\ncheckboxChange(checkbox) {\nif (checkbox.checked) {\nthis.lock();\n} else {\nthis.unlock();\n}\n},\nsetCheckboxesState(state) {\nconst checkboxes = document.querySelectorAll(this.cookModeSelector + ' input[type=\"checkbox\"]');\nfor (const checkbox of checkboxes) {\ncheckbox.checked = state;\n}\n},\nasync lock() {\ntry {\nthis.wakeLock = await this.wakeLockApi.request(\"screen\");\nthis.wakeLock.addEventListener(\"release\", () => {\nthis.wakeLock = false;\nthis.setCheckboxesState(false);\n});\nthis.setCheckboxesState(true);\n} catch (error) {\nthis.setCheckboxesState(false);\n}\n},\nunlock() {\nif (this.wakeLock) {\nthis.wakeLock.release();\nthis.wakeLock = false;\n}\nthis.setCheckboxesState(false);\n}\n};\n\n(function(callback) {\nif (document.readyState !== \"loading\") {\ncallback();\n} else {\ndocument.addEventListener(\"DOMContentLoaded\", callback);\n}\n})(() => {\nwindow.TastyRecipes.cookMode.init();\n});\n\n\n\nwindow.TastyRecipes = window.TastyRecipes || {};\n\nwindow.TastyRecipes.staticTooltip = {\nelement: null,\ntooltipElement: null,\ndeleting: false,\ninit( element ) {\nif ( this.deleting ) {\nreturn;\n}\nthis.element = element;\nthis.buildElements();\n},\ndestroy() {\nif ( ! this.tooltipElement || this.deleting ) {\nreturn;\n}\n\nthis.deleting = true;\nthis.tooltipElement.classList.remove( 'opened' );\n\nsetTimeout( () => {\nthis.tooltipElement.remove();\nthis.deleting = false;\n}, 500 );\n},\nbuildElements() {\nconst tooltipElement = document.createElement( 'div' );\ntooltipElement.classList.add( 'tasty-recipes-static-tooltip');\ntooltipElement.setAttribute( 'id', 'tasty-recipes-tooltip' );\n\nconst currentTooltipElement = document.getElementById( 'tasty-recipes-tooltip' );\nif ( currentTooltipElement ) {\ndocument.body.replaceChild( tooltipElement, currentTooltipElement );\n} else {\ndocument.body.appendChild( tooltipElement );\n}\n\nthis.tooltipElement = document.getElementById( 'tasty-recipes-tooltip' );\n},\nshow() {\nif ( ! this.tooltipElement ) {\nreturn;\n}\n\nconst tooltipTop = this.element.getBoundingClientRect().top\n+ window.scrollY\n- 10 \/\/ 10px offset.\n- this.tooltipElement.getBoundingClientRect().height;\nconst tooltipLeft = this.element.getBoundingClientRect().left\n- ( this.tooltipElement.getBoundingClientRect().width \/ 2 )\n+ ( this.element.getBoundingClientRect().width \/ 2 ) - 1;\nconst posLeft = Math.max( 10, tooltipLeft );\nthis.maybeRemoveTail( posLeft !== tooltipLeft );\n\nthis.tooltipElement.setAttribute( 'style', 'top:' + tooltipTop + 'px;left:' + posLeft + 'px;' );\nthis.tooltipElement.classList.add( 'opened' );\n\n},\nmaybeRemoveTail( removeTail ) {\nif ( removeTail ) {\nthis.tooltipElement.classList.add( 'tr-hide-tail' );\n} else {\nthis.tooltipElement.classList.remove( 'tr-hide-tail' );\n}\n},\nchangeMessage( message ) {\nif ( ! this.tooltipElement ) {\nreturn;\n}\nthis.tooltipElement.innerHTML = message;\n}\n};\n\nwindow.TastyRecipes.ajax = {\nsendPostRequest( url, data, success, failure ) {\nconst xhr = new XMLHttpRequest();\nxhr.open( 'POST', url, true );\nxhr.send( this.preparePostData( data ) );\n\nxhr.onreadystatechange = () => {\nif ( 4 !== xhr.readyState ) {\nreturn;\n}\nif ( xhr.status === 200 ) {\nsuccess( JSON.parse( xhr.responseText ) );\nreturn;\n}\n\nfailure( xhr );\n};\n\nxhr.onerror = () => {\nfailure( xhr );\n};\n},\npreparePostData( data ) {\nconst formData = new FormData();\n\nfor ( const key in data ) {\nformData.append( key, data[key] );\n}\nreturn formData;\n},\n};\n\nwindow.TastyRecipes.ratings = {\ndefaultRating: 0,\ncurrentRatingPercentage: 100,\nsavingRating: false,\ninit( minRating ) {\nthis.minRating = minRating;\n\nthis.formWatchRating();\nthis.closeTooltipWhenClickOutside();\nthis.addBodyClassBasedOnSelectedRating();\nthis.backwardCompFormRatingPosition();\n},\nformWatchRating() {\nconst ratings = document.querySelectorAll('.tasty-recipes-no-ratings-buttons [data-rating]');\nif ( ratings.length <= 0 ) {\nreturn;\n}\nfor ( const rating of ratings ) {\nrating.addEventListener( 'click', event => {\nevent.preventDefault();\nthis.defaultRating = event.target.closest( '.checked' ).dataset.rating;\nthis.setCheckedStar( event.target );\nthis.maybeSendRating( this.defaultRating, event.target );\nthis.setRatingInForm( this.defaultRating );\n} );\n}\n},\ncloseTooltipWhenClickOutside() {\nwindow.addEventListener( 'click', e => {\n\/\/ Bailout (don't remove the tooltip) when the clicked element is a rating star, or it's the tooltip itself.\nif ( e.target.closest( '.tasty-recipes-rating' ) || e.target.classList.contains( 'tasty-recipes-static-tooltip' ) ) {\nreturn;\n}\n\nwindow.TastyRecipes.staticTooltip.destroy();\n} );\n},\n setRatingInForm( rating ) {\nconst ratingInput = document.querySelector( '#respond .tasty-recipes-rating[value=\"' + rating + '\"]' );\nif ( ! ratingInput ) {\nreturn;\n}\nratingInput.click();\n},\naddBodyClassBasedOnSelectedRating() {\nconst ratingInputs = document.querySelectorAll( 'input.tasty-recipes-rating' );\nif ( ! ratingInputs ) {\nreturn;\n}\nfor ( const ratingInput of ratingInputs ) {\nratingInput.addEventListener( 'click', currentEvent => {\nconst selectedRating = currentEvent.target.getAttribute( 'value' );\nthis.handleBodyClassByRating( selectedRating );\nthis.toggleCommentTextareaRequired( selectedRating );\n} );\n}\n},\nhandleBodyClassByRating( rating ) {\nif ( rating < this.minRating ) {\ndocument.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );\nreturn;\n}\ndocument.body.classList.add( 'tasty-recipes-selected-minimum-rating' );\n},\ntoggleCommentTextareaRequired( rating ) {\nconst commentTextarea = document.getElementById( 'comment' );\nif ( ! commentTextarea ) {\nreturn;\n}\n\nif ( rating < this.minRating ) {\ncommentTextarea.setAttribute( 'required', '' );\nreturn;\n}\n\ncommentTextarea.removeAttribute( 'required' );\n},\nmaybeSendRating( rating, element ) {\nif ( this.savingRating === rating ) {\nreturn;\n}\n\nthis.savingRating = rating;\nwindow.TastyRecipes.staticTooltip.init( element );\n\nconst recipeCardElement = element.closest( '.tasty-recipes' );\nif ( ! recipeCardElement ) {\nwindow.TastyRecipes.staticTooltip.destroy();\nreturn;\n}\n\nwindow.TastyRecipes.ajax.sendPostRequest(\nwindow.trCommon.ajaxurl,\n{\naction: 'tasty_recipes_save_rating',\nrating,\nnonce: window.trCommon.ratingNonce,\npost_id: window.trCommon.postId,\nrecipe_id: recipeCardElement.dataset.trId,\n},\n( response ) => {\nwindow.TastyRecipes.staticTooltip.changeMessage( response.data.message );\nwindow.TastyRecipes.staticTooltip.show();\nthis.updateAverageText( response.data, recipeCardElement );\nthis.maybeFillCommentForm( response.data );\n\n\/\/ Hide the tooltip after 5 seconds.\nsetTimeout( () => {\nthis.maybeResetTooltip( recipeCardElement, response.data, rating );\n}, 5000 );\n},\n() => {\nthis.resetTooltip( recipeCardElement );\n}\n);\n},\nupdateAverageText( data, recipeCardElement ) {\nif ( ! data.average ) {\nreturn;\n}\nthis.setRatingPercent( data );\n\nif ( ! data.count ) {\nreturn;\n}\n\nconst quickLink = document.querySelector( '.tasty-recipes-rating-link' );\nif ( quickLink ) {\nthis.setTextInContainer( quickLink, data );\nthis.setPartialStar( quickLink );\n}\n\nconst cardStars = recipeCardElement.querySelector( '.tasty-recipes-ratings-buttons' );\ncardStars.dataset.trDefaultRating = data.average;\nthis.setTextInContainer( recipeCardElement.querySelector( '.tasty-recipes-rating' ), data );\n},\nsetTextInContainer( container, data ) {\nif ( ! container ) {\nreturn;\n}\n\nif ( data.label ) {\nconst ratingLabelElement = container.querySelector( '.rating-label' );\nif ( ratingLabelElement ) {\nratingLabelElement.innerHTML = data.label;\n}\nreturn;\n}\n\nconst averageElement = container.querySelector( '.average' );\nif ( averageElement ) {\naverageElement.textContent = data.average;\n}\n\nconst countElement = container.querySelector( '.count' );\nif ( countElement ) {\ncountElement.textContent = data.count;\n}\n},\nsetPartialStar( container ) {\nconst highestStar = container.querySelector( '[data-rating=\"' + Math.ceil( this.defaultRating ) + '\"]' );\nif ( highestStar ) {\nhighestStar.dataset.trClip = this.currentRatingPercentage;\n}\n},\nsetRatingPercent( data ) {\nthis.defaultRating = data.average.toFixed( 1 );\nconst parts = data.average.toFixed( 2 ).toString().split( '.' );\nthis.currentRatingPercentage = parts[1] ? parts[1] : 100;\nif ( this.currentRatingPercentage === '00' ) {\nthis.currentRatingPercentage = 100;\n}\n},\nsetCheckedStar( target ) {\nconst cardRatingContainer = target.closest( '.tasty-recipes-ratings-buttons' );\nconst selectedRatingElement = cardRatingContainer.querySelector( '[data-tr-checked]' );\nif ( selectedRatingElement ) {\ndelete selectedRatingElement.dataset.trChecked;\n}\n\nconst thisStar = target.closest( '.tasty-recipes-rating' );\nthisStar.dataset.trChecked = 1;\nthisStar.querySelector( '[data-tr-clip]' ).dataset.trClip = 100;\n},\nmaybeFillCommentForm( data ) {\nif ( ! data.comment || ! data.comment.content ) {\nreturn;\n}\n\nconst commentForm = document.querySelector( '#commentform' );\nif ( ! commentForm ) {\nreturn;\n}\n\nconst commentBox = commentForm.querySelector( '[name=comment]' );\nif ( ! commentBox || commentBox.value ) {\nreturn;\n}\n\n\/\/ Add comment details for editing.\ncommentBox.innerHTML = data.comment.content;\nif ( data.comment.name ) {\ncommentForm.querySelector( '[name=author]' ).value = data.comment.name;\ncommentForm.querySelector( '[name=email]' ).value = data.comment.email;\n}\n},\nmaybeResetTooltip( recipeCardElement, data, rating ) {\nif ( this.savingRating === rating ) {\nthis.resetTooltip( recipeCardElement, data );\n}\n},\nresetTooltip( recipeCardElement, data ) {\nwindow.TastyRecipes.staticTooltip.destroy();\nthis.savingRating = false;\n\n\/\/ Reset the default rating.\nconst cardRatingContainer = recipeCardElement.querySelector( '.tasty-recipes-ratings-buttons' );\nif ( cardRatingContainer ) {\nthis.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;\ncardRatingContainer.dataset.trDefaultRating = this.defaultRating;\n\nthis.resetSelectedStar( cardRatingContainer, data );\n}\n},\nresetSelectedStar( cardRatingContainer ) {\nconst selectedRatingElement = cardRatingContainer.querySelector( '[data-rating=\"' + Math.ceil( this.defaultRating ) + '\"]' );\nif ( selectedRatingElement ) {\nselectedRatingElement.querySelector( '[data-tr-clip]' ).dataset.trClip = this.currentRatingPercentage;\nselectedRatingElement.parentNode.dataset.trChecked = 1;\n}\n\nconst previousSelectedElement= cardRatingContainer.querySelector( '[data-tr-checked]' );\nif ( previousSelectedElement ) {\nconst currentSelectedRating = previousSelectedElement.querySelector('[data-rating]');\nif ( currentSelectedRating !== selectedRatingElement ) {\ndelete previousSelectedElement.dataset.trChecked;\n}\n}\n},\nbackwardCompFormRatingPosition() {\nconst ratingsButtons = document.querySelector( '#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons' );\nif ( ! ratingsButtons ) {\nreturn;\n}\nconst ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);\nif ( ! ratingsButtonsStyles.display.includes( 'flex' ) ) {\nratingsButtons.style.direction = 'rtl';\n}\n\nif ( typeof tastyRecipesRating !== 'undefined' ) {\n\/\/ Select the rating that was previously selected in admin.\nratingsButtons.querySelector( '.tasty-recipes-rating[value=\"' + tastyRecipesRating + '\"]' ).checked = true;\n}\n\nconst ratingSpans = ratingsButtons.querySelectorAll( '.tasty-recipes-rating' );\nfor (const ratingSpan of ratingSpans) {\nratingSpan.addEventListener( 'click', event => {\nif ( ratingSpan === event.target ) {\nreturn;\n}\nratingSpan.previousElementSibling.click();\n} );\n}\n}\n};\n\n(function(callback) {\nif (document.readyState !== \"loading\") {\ncallback();\n} else {\nwindow.addEventListener( 'load', callback );\n}\n})(() => {\nwindow.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );\n});\n<\/script><\/div>\n    <div class=\"xs_social_share_widget xs_share_url after_content \t\tmain_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content\">\n\n\t\t\n        <ul>\n\t\t\t        <\/ul>\n    <\/div> \n","protected":false},"excerpt":{"rendered":"<p>Planning a holiday meal gets much easier when you have one clear path from main dish to dessert. This Easter Dinner Menu &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Easter Dinner Menu: Ham, Spring Sides + Dessert for 8\" class=\"read-more button\" href=\"https:\/\/inasrecipes.com\/fr\/easter-dinner-menu-ham-spring-sides-dessert\/#more-4104\" aria-label=\"En savoir plus sur Easter Dinner Menu: Ham, Spring Sides + Dessert for 8\">Voir la recette<\/a><\/p>","protected":false},"author":2,"featured_media":4107,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"googlesitekit_rrm_CAownpvBDA:productID":"","footnotes":""},"categories":[35],"tags":[],"class_list":["post-4104","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dinner","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-50","no-featured-image-padding"],"_links":{"self":[{"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/posts\/4104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/comments?post=4104"}],"version-history":[{"count":1,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/posts\/4104\/revisions"}],"predecessor-version":[{"id":4108,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/posts\/4104\/revisions\/4108"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/media\/4107"}],"wp:attachment":[{"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/media?parent=4104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/categories?post=4104"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inasrecipes.com\/fr\/wp-json\/wp\/v2\/tags?post=4104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}