6
votes

Mal formé HTML: Comment ne pas montrer une balle sur un élément LI vide

J'ai du code HTML créé / sortie à partir d'une application flash et je dois l'afficher / le rendre dans Firefox.

Le HTML est mal formé, il va donc cracher de manière vide Li Strong> éléments et listes sans UL ou OL STRAND> ÉLÉMENTS, mais il crachera la li éléments. p>

existe un drapeau CSS ou une méthode pour ne pas afficher une balle LI si l'élément LI est vide (voir exemple de code de ce que vide em> signifie ci-dessous)? Strong> P>

Si un élément LI n'a pas d'innertext, alors cela montre la balle. Mais je ne veux pas que cela fasse cela, je veux que cela ne montre pas la balle s'il n'y a pas d'Innertext dans l'élément Li. Y a-t-il un moyen de le faire sans avoir à analyser HTML? P>

// example of badly formed HTML output from flash
<textformat leading="2">
    <li>
        <font style=" font-family: 'arial'; font-size: 14px; color: #FFFFFF; letter-spacing: 0px; ">
            <b>Influence and Negotiation</b>
            <font style=" font-size: 12px; color: #000000; ">
            </font>
        </font>
    </li>
</textformat>

// sometimes I get an empty li element, which in Firefox shows the bullet. I want to NOT show the bullet/li element if it is empty
<textformat leading="2">
    <li>
        <font style=" font-family: 'arial'; font-size: 14px; color: #FFFFFF; letter-spacing: 0px; ">
            <!-- empty li element -->
        </font>
    </li>
</textformat>


0 commentaires

3 Réponses :


4
votes

Non, il n'y a pas de moyen. Il y a : vide mais cela ne fonctionne pas lorsqu'il y a un élément en dessous, et il n'y a pas : a dans CSS. Vous pouvez utiliser : a avec jQuery, cependant, et depuis que vous avez marqué, il Je suppose que c'est une option: xxx

serait fonctionnant?


0 commentaires

2
votes

Si vous souhaitez retirer les éléments LI vides (où "vide" signifie aucun ou unique contenu sur blanc), vous pouvez faire: xxx pré>

Vous pouvez définir le LIS vide à: P>

 display: none;


0 commentaires

0
votes
$(document).ready(function(){
    $('li').each(function(){
      if($(this).html().length == 0)
          $(this).css('list-style-type','none')                        
   });

});
http://jsfiddle.net/yU8aJ/

0 commentaires