Pontus Jansson's first-half header proved the decisive moment of a hard-fought battle at Elland Road this afternoon, as Norwich failed to capitalise on several decent chances.

The Sweden international nodded home a free-kick in the 41st minute to set the hosts on their way and the Canaries were unable to force an equaliser despite having the better of the second half, slipping to a sixth defeat in nine league games.

Daniel Farke made just one change to his starting XI at Elland Road, with Marley Watkins replacing Josh Murphy on the left wing, with the Welshman having come on at half-time of last week's 3-1 home win over Sheffield Wednesday.

There was a good tempo to the early period but the only real goal-mouth action saw Angus Gunn make two brave claims in the air under pressure.

Leeds started to find their rhythm though, with left-back Gaetano Berardi thumping a low shot just wide in the 26th minute and right-back Luke Ayling heading straight at Gunn soon after, failing to make proper contact after a fine curling free-kick from the right from Pawel Cibicki.

With City using the ball nicely enough, Leeds upped the tempo again before the break and Kalvin Phillips turned a shot against the post in the 40th minute, after a free-kick from the left from Ezgjan Alioski reached him at the back post.

The home crowd found their voice and a minute later took the lead, Harrison Reed bringing down Cibicki on the left. The Swede took the free-kick himself and Pontus Jansson stooped to nod a header past Gunn from 12 yards.

The Canaries did react but couldn't find an equaliser before the break, an Ivo Pinto cross from the right forcing Ayling to put the ball over his own crossbar and Nelson Oliveira forcing a good save from Felix Wiedwald in injury-time, with James Maddison lashing the loose ball well over.

Nerves continued to creep in for Leeds, with Wiedwald saving low to his left from Pritchard after good work from Watkins in the 48th minute and grateful to see a deflected Maddison shot loop up and into his arms soon after.

Gunn did well to turn a low shot from Samuel Saiz around his post in the 63rd minute and Kalvin Phillips lashed a shot just wide from 20 yards after the resulting corner had broken down.

The Manchester City loanee was relieved to see Kemar Roofe fire wide after a scuffed clearance in the 72nd minute, before City started to build some momentum.

Maddison teed up Pritchard to loop a shot onto the top of the bar just a minute later and Wiedwald made a fine sprawling save to stop a Pritchard shot from finishing in his top-right corner after Maddison had squared a free-kick to the edge of the box.

Grant Hanley's awful back-pass played Saiz clean through in the 80th minute, who looked destined to settle the game, but the Spaniard saw his shot come back off the right post.

Watkins rolled a low shot beyond the far post two minutes later and both Wes Hoolahan and Cameron Jerome were thrown on as Daniel Farke tried to force the issue – but Leeds stood firm to keep hold of a hard-earned three points, with their substitute Pablo Hernandez finding the side-netting during the games final moments.

City return to Championship action on Friday when they take on Brentford at Carrow Road.

Norwich: Gunn; Pinto (C), Hanley, Klose, Stiepermann (Hoolahan 83); Reed, Vrancic (Jerome 83); Pritchard, Maddison, Watkins; Oliveira. Unused subs: McGovern (GK), Zimmermann, Trybull, Tettey, Murphy

Booked: Oliveira (dissent, 68), Hanley (foul on Ayling, 90+1)

Leeds: Wiedwald; Ayling, Cooper (C), Jansson, Berardi; Vieira, Phillips; Cibicki (Pennington 85), Saiz (Grot 81), Alioski; Roofe (Hernandez 77). Unused subs: Lonergan (GK), Anita, Shaughnessy, O'Kane

Booked: Vieira (foul on Maddison, 61), Cooper (foul on Oliveira, 68), Jansson (foul on Oliveira, 69)

Goal: Jansson (41)

Referee: Darren England

Attendance: 30, 590 (1,000 away estimated)

• Follow all the post-match reaction and analysis in our Matchday Live blog at pinkun.com/live