2015-03-16 3 views
3

Мне нужно сделать DIV, который имеет текст, но никаких дочерних элементов, невидимых с CSS, есть ли способ сделать это?CSS select div без элементов

если это HTML сделать узел видимый

<div class="pages_available_text" style=""> 
         1 
    <a href="javascript: void(0);" onclick="Add_Search_Param('page', 2); return Refine();">2</a> 

    <a href="javascript: void(0);" onclick="Add_Search_Param('page', 3); return Refine();">3</a> 

</div> 

, но если это HTML-

<div class="pages_available_text"> 
         1 
</div> 

он должен скрыть DIV (: пусто не будет работать, потому что ДИВ содержит текст)

+0

Вы просто хотите скрыть div только с помощью CSS? – cafebabe1991

+0

да, но только если в этом нет элементов. – jnetcodes

ответ

2

Обходной путь (но не удаляет div используемое пространство, просто сделайте текст невидимым), оберните текст span (поскольку TextNode не может быть выбран используя css), затем скройте его с помощью :only-child селектор:

<style> 
    .pages_available_text > :only-child { 
    display:none; 
    } 
</style> 

<div class="pages_available_text"> 
    <span class='num'>1</span> 
    <a href="javascript: void(0);" onclick="Add_Search_Param('page', 2); return Refine();">2</a> 
    <a href="javascript: void(0);" onclick="Add_Search_Param('page', 3); return Refine();">3</a> 
</div> 

<div class="pages_available_text"> 
    <span class='num'>1</span> 
</div><!-- the span won't show --> 
+0

Я пытаюсь не испортить HTML. Я пытаюсь сделать это только с помощью CSS! – jnetcodes

Смежные вопросы