Match ends, Cardiff City 0, Preston North End 0.
Preston were forced to settle for a share of the spoils despite a dominant display in the Welsh capital against Cardiff City.
The hosts failed to register a shot on target until stoppage time as Preston showed why they are looking like promotion contenders in this stalemate.
Midfielder Alan Browne missed the visitors' best opportunity.
The draw sees Cardiff move up to 11th while Preston remain third in the Championship.
Etheridge's splendid save
Both sides made changes from their last contests ahead of the busy festive period, with Cardiff making five changes and Preston two.
The headline news saw Jazz Richards make a first league start for the Bluebirds in 691 days as they looked to build on their stunning comeback which earned a draw against Leeds at Elland Road last time out.
However, while the Bluebirds' form since Neil Harris' appointment has been vastly improved, they have been a better second-half side than first, with sluggish starts a feature of this season.
This was certainly the case for the visit of Alex Neil's side who were unlucky not to lead at the interval after a first half in which they dominated for long spells and created far more scoring opportunities.
Welshman Billy Bodin sent a dipping effort just over the crossbar after seven minutes and also should have scored midway through the first half when Neil Etheridge's splendid point-blank save denied him the chance to score from the best opportunity of the contest.
Preston's high press and relentless work rate was forcing the Bluebirds onto the back foot and the visitors continued to press out of possession and look to win the ball in high areas, creating two opportunities for Sean Maguire, but he twice found the side-netting.
Cardiff seek inspiration
Maguire also flashed just wide on the stroke of half time, while Lee Tomlin's curling effort from 20-yards was Cardiff's only effort on goal before the break.
Preston were looking to improve their away form having won just one of their last five on the road and scoring a solitary goal in that time and they started the second half again on the front foot with Paul Gallagher curling inches wide.
Cardiff sent on Danny Ward and Gary Madine in search of inspiration, but none was forthcoming with Curtis Nelson conceding possession before Browne fired tamely at Etheridge to hand the hosts a major reprieve with 20 minutes remaining.
Preston's lack of confidence in front of goal was clear to see and, despite a fine performance, they had to settle for a point when Ben Pearson's drive was beaten clear by Etheridge in the closing stages, while Tomlin finally forced Declan Rudd into action, but he tipped over.
Cardiff City manager Neil Harris told BBC Sport Wales:
"It was not the most exciting game, not the excitement we have been used to anyway.
"In some ways I am pleased, because we got a clean sheet and looked relatively reliable... but we lacked creativity.
"Credit goes to Preston. But we weren't good enough in possession today.
"I wouldn't say I am grateful for a point, there wasn't much in it, but Preston look a well-oiled ship after two years with Alex Neil."
Preston manager Alex Neil told BBC Radio Lancashire:
"I think everyone who watched the game would have recognised we were by far the better side.
"I don't think Cardiff had a shot on target, the one at the end might have been going over... I felt we dominated the game in both boxes.
"It was just that final little bit, we needed to find that first goal. I am pleased with how we played, but disappointed we didn't win.
"We have played a lot worse than that this season and won... so it is frustrating."
- 19Mendez-LaingSubstituted forPatersonat 85'minutes
- 17TomlinBooked at 45mins
- 11MurphySubstituted forWardat 62'minutes
- 9GlatzelSubstituted forMadineat 62'minutes
- 5ClarkeBooked at 35mins
- 12GallagherBooked at 21minsSubstituted forPottsat 85'minutes
- 39BodinSubstituted forStockleyat 86'minutes
- 29BarkhuizenSubstituted forNugentat 74'minutes
- Jeremy Simpson
- Shots on Target
Second Half ends, Cardiff City 0, Preston North End 0.
Corner, Cardiff City. Conceded by Declan Rudd.
Attempt saved. Lee Tomlin (Cardiff City) left footed shot from the centre of the box is saved in the top centre of the goal. Assisted by Curtis Nelson with a headed pass.
Foul by Sean Maguire (Preston North End).
Callum Paterson (Cardiff City) wins a free kick in the attacking half.
Foul by David Nugent (Preston North End).
Jazz Richards (Cardiff City) wins a free kick in the defensive half.
Attempt blocked. Sean Maguire (Preston North End) left footed shot from the centre of the box is blocked. Assisted by Brad Potts.
Ben Pearson (Preston North End) wins a free kick in the defensive half.
Foul by Aden Flint (Cardiff City).
Attempt saved. Ben Pearson (Preston North End) right footed shot from the right side of the box is saved in the centre of the goal. Assisted by Brad Potts.
Substitution, Preston North End. Jayden Stockley replaces Billy Bodin.
Attempt missed. Alan Browne (Preston North End) right footed shot from outside the box is just a bit too high. Assisted by Brad Potts.
Substitution, Preston North End. Brad Potts replaces Paul Gallagher.
Substitution, Cardiff City. Callum Paterson replaces Nathaniel Mendez-Laing.
Attempt missed. Billy Bodin (Preston North End) left footed shot from outside the box is high and wide to the left. Assisted by Tom Clarke.
Attempt missed. Billy Bodin (Preston North End) right footed shot from outside the box misses to the right.
Paul Huntington (Preston North End) wins a free kick in the defensive half.
Foul by Gary Madine (Cardiff City).