<script src="jquery.js"></script>
<p id="a1">
<p class="aa" style="width: 200px;">423423423423423423423</p>
<p class="aa" style="width: 180px;">42342342342342342</p>
<p class="aa" style="width: 150px;">123123</p>
</p>
<script>
var w = 0
$("#a1 .aa").each(function(){
w += $("#a1 .aa").width();//获取宽度。并累加
})
$("#a1").width(w)
</script>
<style>
.aa{
display: inline-block;
}
</style>
À l'origine, le résultat devrait être comme ça
Mais après avoir supprimé les styles en ligne, le résultat est superbe.
Pourquoi supprimer les styles en ligne ? C'est ça? ? ? ?
Raccourcir
style
标签对放到dom
和js
之前你的代码结构如果没有行内样式,会先把
.aa
按照块级元素
处理,宽度为100%js处理完成之后才读取style标签对,把
.aa
处理为行内块级元素
la largeurLe code synchronisé doit être positionné correctement
w += $("#a1 .aa").width();//Obtenir la largeur. Et additionnez
Mettez le style en haut. La page est chargée de haut en bas. p est un élément de niveau bloc .aa{display:inlne-block;} ne fonctionne pas en bas
.Vous ne comprenez pas le vrai sens de
$(selector)
Allez vérifier ce qui sera retourné et vous connaîtrez le problème
Une autre question
Vous devez comprendre où le style sera ajouté et sera-t-il chargé à l'avance ?
Quelle est l'exécution du script ?