Comment utiliser le CSS et le JavaScript?) pour créer un flou, “givré” de fond?

Je suis en train de créer une version d'iOS 7 style aspect givré avec HTML5, CSS3 et JavaScript, qui peut fonctionner sur les navigateurs webkit.

Techniquement, vu le code HTML suivant:

<style>
  #partial-overlay {
    width: 100%;
    height: 20px;
    background: rgba(255, 255, 255, .2); /* TODO frost */
    position: fixed;
    top: 0;
    left: 0;
  }
</style>
<div id="main-view">
  <div style="width: 50px; height: 50px; background: #f00"></div>
  To my left is a red box<br>
  Now there is just text<br>
  Text that goes on for a few pixels <br>
  or even more
</div>
<div id="partial-overlay">
  Here is some content
</div>

Je veux faire quelque chose comme un -webkit-filter: blur(5px) pour la première 20px horizontalement de #main-view.

Si le CSS a été modifié pour être #partial-overlay { width: 20px; height: 100%; ...} puis j'avais besoin d'appliquer la -webkit-filter: blur(5px) pour la première 20px verticalement.

La solution la plus évidente consiste à utiliser javascript pour faire un clone de la #main-view, ensemble overflow: hidden et ensuite modifier la largeur/hauteur le cas échéant, mais qui me semble difficile de généraliser à des pages plus complexes/CSS structures.

Est-il une meilleure façon d'atteindre cet objectif avec un minimum de performances et maximale de la généralisabilité?

MODIFIER: Voici un exemple de ce que je suis en train de réaliser:
Comment utiliser le CSS et le JavaScript?) pour créer un flou, “givré” de fond?

  • CSS est un tout ou rien". Vous ne pouvez pas appliquer une propriété à un arbitraire de la partie. Le plus proche que vous pouvez obtenir à "seule la première 20px" est à l'aide de la :first-line pseudo-élément.
  • voir l'ouvrage "la solution la plus évidente"
  • Pourriez-vous montrer un exemple d'image de ce que vous cherchez à faire? Si j'ai lu la question correctement, vous pouvez essayer d'utiliser les multiples origines de la capacité de css pour atteindre cet objectif. EDIT: aussi, voici un JSFIDDLE de son exemple pour quelqu'un qui est en répondant à cette et que vous souhaitez tester: jsfiddle.net/c6Lwf
  • cela vous aide?
  • juste essayé et webkit-filter: blur ne semble pas fonctionner avec first-line, ressemble à seulement certains styles sont autorisés pour cette pseudo classe
  • Regardez ces sites: davidwalsh.name/demo/css-filters.php & css-tricks.com/fun-with-blurred-text
  • J'étais à la recherche sur l'Apple page d'accueil et de contrôle sur la façon dont ils ont créé cette partielle effet de flou. Il s'avère qu'ils ont utilisé des images pour cette. Je suppose qu'il n'y a pas de moyen simple de faire cela et de votre suggestion dans la question, la seule voie viable pour parvenir à cet effet. Il est possible de généraliser en faisant des calculs à partir de la superposition de div, mais il y aura certainement un gain de performance.
  • aaron, j'ai changé le mien, il semble maintenant beaucoup plus comme l'image a montré
  • Ne pas box-shadow aider ?