2013-09-20 5 views
2

У меня есть быстрый вопрос:Показать на клике - CSS, HTML5

У меня есть быстрый стол, в котором есть что-то кликаемое.

<table class ="tablez"> 
    <tr> 
     <th>Table Title </th> 
    </tr> 
    <tr> 
     <td> 
      <a class="clickable">Click Me!</a> 
      <div id="showedClickable"> 
       <p>This is showed when Click Me! is clicked.</p> 
      </div><!--EO showedClickable --> 
     </td> 
    </tr> 
</table> 

То, что я хочу сделать это:

#showedClickable { 
    position:absolute; 
    display:none; 
    width:auto; 
    height:auto; 
} 

Это часть я не знаю, как «фраза» ... Как мне сделать так, чтобы

a.clickable:focus + #showedClickable { 
    display:block; 
} 

ответ

7

Проблема в том, что элемент a без href не получает фокуса по умолчанию. Вот почему ваш код не работает. Вы должны дать ему tabindex, чтобы сделать его фокусируемым.

<a tabindex="0" class="clickable">Click Me!</a> 

jsFiddle Demo

+1

Это решило мою проблему, большое вам спасибо! : D – user1876553

2

Если вы хотите, чтобы показать div на щелчку a как ваш заголовок указывает, что вы можете сделать это путем изменения кода, как показано ниже:

HTML:

<a href='#showedClickable' class="clickable">Click Me!</a> 

CSS:

#showedClickable:target { 
    display:block; 
} 

Fiddle

РЕДАКТИРОВАТЬ:

:target является псевдо-класс, который соответствует элементу которого id та же, что и идентификатор фрагмента в URI.

URI с идентификаторами фрагментов ссылаются на определенный элемент внутри документа, известный как целевой элемент. В этом случае цель (href анкера) представляет собой элемент с id как showedClickable. Следовательно, при нажатии на якорь содержимое отображается.

Вы можете найти более подробную информацию о :target псевдо-класса here

Примечание: Как bažmegakapa указал в комментариях, этот метод не будет работать в IE 8 и ниже.

+0

+1 это хорошая идея, если вам не нужен старый IE (8 или ниже). – kapa

+2

@ bažmegakapa: Спасибо, помощник. Спустил этот маршрут, поскольку OP помечен HTML5. Не уверен, что есть необходимость поддерживать более низкие версии IE. – Harry

+0

upvoted спасибо за информацию о: target действительно полезно. но наши старые IE :( –

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