2009-11-19 3 views
0

Supposons que j'ai une table dans une page Web:Obtenir le paramètre CSS JavaScript

<table><th id='th1'></th></table> 

Je définissent le CSS dans l'en-tête:

#th1 
{width: 100%;} 

La question est, comment obtenir le CSS largeur en utilisant JavaScript? J'ai essayé width, style.width, et jQuery ("# ​​th1"). Css ("width"), mais ni l'un ni l'autre ne me donne le résultat de '100%'.

+0

J'ai inclus le code HTML de la table mais il n'a pas apparaît, c'est juste une simple table, avec la balise th, id = 'th1' ... – Fred

+0

@Estelle, lors de l'écriture du post, vous pouvez soit entourer les exemples de code avec un retour arrière de chaque côté, ou indenter le code par quatre espaces; les deux feront en sorte que le code soit affiché/rendu sous forme de code. Vous pouvez également sélectionner le texte avec votre souris/clavier, puis cliquer sur le bouton avec les 1 et 0 pour faire la même chose. –

+0

merci. c'est drôle, je veux juste dire merci mais quand je clique sur Ajouter un commentaire il me dit j'ai besoin d'au moins 15 caractères - :) – Fred

Répondre

2

Je pense qu'il n'y a aucun moyen d'obtenir la valeur de pourcentage que vous avez spécifié dans votre fichier CSS pour la largeur de votre élément.

Une solution serait de calculer comme ceci:

HTML:

<h1 id="header">Hello, World</h1> 

Javascript (jQuery):

var percentageWidth = (($("#header").width()*100)/$("#header").parent().width())+"px"; 
+0

Je pense que c'est ce que J'ai, merci. – Fred

1
<h1 id="myHeader">Text</h1> 

$('#myHeader').css('width'); 

Doit fonctionner à chaque fois.

+0

le problème est, dans l'échantillon ci-dessus, il renvoie px au lieu de 100% – Fred

1

Juste au cas où, si vous voulez obtenir la largeur actuelle réelle en pixels, pas ce que dit la largeur CSS, vous pouvez faire:

$('#th1').width();