Gerard Moreno scored an injury-time winner as Espanyol beat Real Madrid for the first time in over a decade.
Real had won five games in a row but rested Cristiano Ronaldo and were made to pay for a below-par performance.
Espanyol probably edged the game and Moreno had a first-half goal ruled out for a marginal offside call.
Real defender Sergio Ramos was playing as an extra striker at the end as Moreno controlled Sergio Garcia’s cross before smashing the ball home.
On Ramos going up front, Zidane said: “When there’s not long left and it’s 0-0 anything can happen. We always look to go for the win and today we didn’t get it. They scored a goal in the last minute, but there’s no need for us to go over it again. We didn’t deserve to win or lose.
“We were lacking a little bit in all departments. It’s a defeat that hurts and it’s a poor result. I feel sorry for the players.
“At times, there’s no understanding football. We dropped further back for some spells in the second half but you’ve got to accept these tough times. At no point in the second half did we do well.”
La Liga champions Real remain 14 points behind Barcelona, who visit Las Palmas on Thursday in their game in hand.
Espanyol had failed to win in their last 22 games against Real, drawing only three of those, a run going back to October 2007.