2013-03-07 6 views
2

Cette question est assez courte à dessein, mais je suis très curieux de savoir si c'est possible.Récupérer le style CSS avec CSS

Pouvez-vous chercher d'autres styles dans une feuille de style CSS "avec" CSS?

Un peu comme faire avec jQuery:

var header_height = $('#header').css('height'); 

Je peux faire des calculs comme celui-ci:

#content { 
    height: calc(100% - property('#header', 'height') - property('#footer', 'height')); 
} 

Lorsqu'un bien alors par exemple représenter l'extraction du CSS style d'une autre étiquette.

Pas JavaScript autorisé pour cette question ^^

+2

Non. Cela ne peut pas être fait. –

Répondre

4

Une réponse courte: Non, il est impossible avec CSS pur. Vous ne pouvez le faire avec JavaScript ou avec des restrictions dans des langages comme SASS ou LESS qui génèrent des CSS purs. Mais si les dimensions changent dynamiquement, les deux ne vont pas aider non plus.

Votre seule chance est en CSS avec des pourcentages comme

#content { 
    height: 80%; 
} 

où la hauteur change en conséquence à la hauteur des parents. Mais cela ne fonctionne qu'avec les éléments parents bien sûr.

+0

+1 pour moins. Assez puissant. – Phix

+0

Triste, mais logique je suppose :) –

+0

Cela m'est venu quand j'ai répondu à cette question (http://stackoverflow.com/questions/15264255/header-and-footer-with-horizontal-scrolling-content-in-pure -html-and-css/15265930 # 15265930) et se demandait si vous pouviez récupérer dynamiquement les '# header' et' # footer' 'height' pour le' # content'. Je suppose que ce n'est pas très difficile à faire manuellement. Mais qui n'aime pas la dynamique? :) –