2016-01-04 30 views
10

Ho una casella con didascalia, che è position: absolute e nascosta con top: 100%. Il genitore della didascalia ha overflow: hidden. Quando passo il mouse sulla casella, la didascalia scorre in modo da renderla completamente visibile.pixel con overflow: nascosto e trasformazione: translate

Il problema ora è che durante questa transizione, c'è un bug di pixel. Ciò significa che la didascalia durante la transizione è 1 pixel meno largo della casella genitore. Dopo la transizione tutto sembra a posto.

Appare in IE 11 su Windows 8.1 e nei browser Webkit su Mac 10.11.2.

Si dovrebbe vedere questo effetto in this fiddle. Quando non vedi il bug dei pixel, prova a ridimensionare la finestra.

Si vede anche l'errore sullo screenshot.

enter image description here

ho già provato a:

  • Impostare la didascalia 1 pixel più ampio
  • Aggiungi overflow-x: hidden
  • Aggiungi translate3d
+0

in realtà non riesco a vedere l'errore, potresti prendere un paio di schermate di questo pixel bug? –

+0

Non lo vedo (Chrome/Mac 10.11.2) - Potresti fornire uno screenshot? –

+0

@RyanLittle ho caricato uno screenshot. Lo screenshot è fatto in ie, ma sembra così negli altri browser. – NinjaOnSafari

risposta

-1

darò una prova utilizzando una di queste opzioni:

posizione: relativa;

-webkit-transform: translateZ (0px);

-webkit-font-smoothing: subpixel-antialiased; o webkit-font-smoothing: antialiased

+0

potresti aggiornare il violino? – NinjaOnSafari

+0

Impossibile replicare nel computer corrente Sono attivo. Se trovo un po 'di tempo questa sera proverò da qualche altra macchina. –

+0

non si dovrebbe usare lo smussamento dei caratteri questo non è standard: https://developer.mozilla.org/en-US/docs/Web/CSS/font-smooth –

5

Ho riscontrato questo errore prima. il pixel bug è causato dalla trasformazione: translate.

provare questo sull'elemento padre.

-webkit-transform-style: preserve-3d; 

-moz-transform-style: preserve-3d; 

transform-style: preserve-3d;