【问题标题】:Css focus beginnerCss 专注初学者
【发布时间】:2012-01-27 10:07:28
【问题描述】:

我是 CSS 的初学者并且已经讨厌它 :(。当用户在日历之外点击时,我希望日历消失。

这是日历的html代码:

<div id="ctl00_MainContent_EventsCalendar" class="RadScheduler RadScheduler_Default" style="overflow-y:visible;">
<div class="rsTopWrap rsOverflowExpand" style="width: 1157px; ">
<div class="rsHeader">
        <div class="rsDatePickerWrapper" style="overflow-x: visible; overflow-y: visible; ">
            <div id="ctl00_MainContent_EventsCalendar_SelectedDateCalendar_wrapper" style="position: absolute; width: 220px; height: 176px; overflow-x: hidden; overflow-y: hidden; ">
                <table id="ctl00_MainContent_EventsCalendar_SelectedDateCalendar" summary="Calendar" cellspacing="0" class="RadCalendar RadCalendar_Default rsDatePickerCalendar">

我试过了:

.RadCalendar_Default .rsHeader a.rsDatePickerCalendar:hover { 可见性:隐藏!重要; }

但它不起作用。

【问题讨论】:

  • 你的标题与你的问题无关。
  • 我不认为你想要的只是 css。

标签: css focus


【解决方案1】:

首先,我建议不要使用visibility: hidden;,而是使用display: none; 来隐藏元素。否则您可能会产生不良副作用。

然后,:hover 伪类不处理click 事件,它只是处于活动状态,如果用户(顾名思义)将光标悬停在元素上。要在单击时更改元素的外观,请像这样使用 jQuery:

$('body').bind('click', function() {
    $(".RadScheduler", this).addClass("hide");
});

并有这样的 css 规则:

.hide { display: none; }

【讨论】:

  • @Nikosinathi 但是这个类不叫 RadScheduler
  • 您需要将“RadScheduler”替换为您用来定位要隐藏的元素的任何标识符。
猜你喜欢
  • 2016-08-09
  • 1970-01-01
  • 2022-01-17
  • 2012-12-20
  • 2011-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多