fullcalendar.css 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980
  1. /*!
  2. * FullCalendar v2.2.0 Stylesheet
  3. * Docs & License: http://arshaw.com/fullcalendar/
  4. * (c) 2013 Adam Shaw
  5. */
  6. .fc {
  7. direction: ltr;
  8. text-align: left;
  9. }
  10. .fc-rtl {
  11. text-align: right;
  12. }
  13. body .fc { /* extra precedence to overcome jqui */
  14. font-size: 1em;
  15. }
  16. /* Colors
  17. --------------------------------------------------------------------------------------------------*/
  18. .fc-unthemed th,
  19. .fc-unthemed td,
  20. .fc-unthemed hr,
  21. .fc-unthemed thead,
  22. .fc-unthemed tbody,
  23. .fc-unthemed .fc-row,
  24. .fc-unthemed .fc-popover {
  25. border-color: #ddd;
  26. }
  27. .fc-unthemed .fc-popover {
  28. background-color: #fff;
  29. }
  30. .fc-unthemed hr,
  31. .fc-unthemed .fc-popover .fc-header {
  32. background: #eee;
  33. }
  34. .fc-unthemed .fc-popover .fc-header .fc-close {
  35. color: #666;
  36. }
  37. .fc-unthemed .fc-today {
  38. background: #fcf8e3;
  39. }
  40. .fc-highlight { /* when user is selecting cells */
  41. background: #bce8f1;
  42. opacity: .3;
  43. filter: alpha(opacity=30); /* for IE */
  44. }
  45. .fc-bgevent { /* default look for background events */
  46. background: rgb(143, 223, 130);
  47. opacity: .3;
  48. filter: alpha(opacity=30); /* for IE */
  49. }
  50. .fc-nonbusiness { /* default look for non-business-hours areas */
  51. /* will inherit .fc-bgevent's styles */
  52. background: #ccc;
  53. }
  54. /* Icons (inline elements with styled text that mock arrow icons)
  55. --------------------------------------------------------------------------------------------------*/
  56. .fc-icon {
  57. display: inline-block;
  58. font-size: 2em;
  59. line-height: .5em;
  60. height: .5em; /* will make the total height 1em */
  61. font-family: "Courier New", Courier, monospace;
  62. }
  63. .fc-icon-left-single-arrow:after {
  64. content: "\02039";
  65. font-weight: bold;
  66. }
  67. .fc-icon-right-single-arrow:after {
  68. content: "\0203A";
  69. font-weight: bold;
  70. }
  71. .fc-icon-left-double-arrow:after {
  72. content: "\000AB";
  73. }
  74. .fc-icon-right-double-arrow:after {
  75. content: "\000BB";
  76. }
  77. .fc-icon-x:after {
  78. content: "\000D7";
  79. }
  80. /* Buttons (styled <button> tags, normalized to work cross-browser)
  81. --------------------------------------------------------------------------------------------------*/
  82. .fc button {
  83. /* force height to include the border and padding */
  84. -moz-box-sizing: border-box;
  85. -webkit-box-sizing: border-box;
  86. box-sizing: border-box;
  87. /* dimensions */
  88. margin: 0;
  89. height: 2.1em;
  90. padding: 0 .6em;
  91. /* text & cursor */
  92. font-size: 1em; /* normalize */
  93. white-space: nowrap;
  94. cursor: pointer;
  95. }
  96. /* Firefox has an annoying inner border */
  97. .fc button::-moz-focus-inner {
  98. margin: 0;
  99. padding: 0;
  100. }
  101. .fc-state-default { /* non-theme */
  102. border: 1px solid;
  103. }
  104. .fc-state-default.fc-corner-left { /* non-theme */
  105. border-top-left-radius: 4px;
  106. border-bottom-left-radius: 4px;
  107. }
  108. .fc-state-default.fc-corner-right { /* non-theme */
  109. border-top-right-radius: 4px;
  110. border-bottom-right-radius: 4px;
  111. }
  112. /* icons in buttons */
  113. .fc button .fc-icon { /* non-theme */
  114. position: relative;
  115. top: .05em; /* seems to be a good adjustment across browsers */
  116. margin: 0 .1em;
  117. }
  118. /*
  119. button states
  120. borrowed from twitter bootstrap (http://twitter.github.com/bootstrap/)
  121. */
  122. .fc-state-default {
  123. background-color: #f5f5f5;
  124. background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
  125. background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
  126. background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
  127. background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
  128. background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
  129. background-repeat: repeat-x;
  130. border-color: #e6e6e6 #e6e6e6 #bfbfbf;
  131. border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  132. color: #333;
  133. text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  134. box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  135. }
  136. .fc-state-hover,
  137. .fc-state-down,
  138. .fc-state-active,
  139. .fc-state-disabled {
  140. color: #333333;
  141. background-color: #e6e6e6;
  142. }
  143. .fc-state-hover {
  144. color: #333333;
  145. text-decoration: none;
  146. background-position: 0 -15px;
  147. -webkit-transition: background-position 0.1s linear;
  148. -moz-transition: background-position 0.1s linear;
  149. -o-transition: background-position 0.1s linear;
  150. transition: background-position 0.1s linear;
  151. }
  152. .fc-state-down,
  153. .fc-state-active {
  154. background-color: #cccccc;
  155. background-image: none;
  156. box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
  157. }
  158. .fc-state-disabled {
  159. cursor: default;
  160. background-image: none;
  161. opacity: 0.65;
  162. filter: alpha(opacity=65);
  163. box-shadow: none;
  164. }
  165. /* Buttons Groups
  166. --------------------------------------------------------------------------------------------------*/
  167. .fc-button-group {
  168. display: inline-block;
  169. }
  170. /*
  171. every button that is not first in a button group should scootch over one pixel and cover the
  172. previous button's border...
  173. */
  174. .fc .fc-button-group > * { /* extra precedence b/c buttons have margin set to zero */
  175. float: left;
  176. margin: 0 0 0 -1px;
  177. }
  178. .fc .fc-button-group > :first-child { /* same */
  179. margin-left: 0;
  180. }
  181. /* Popover
  182. --------------------------------------------------------------------------------------------------*/
  183. .fc-popover {
  184. position: absolute;
  185. box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
  186. }
  187. .fc-popover .fc-header {
  188. padding: 2px 4px;
  189. }
  190. .fc-popover .fc-header .fc-title {
  191. margin: 0 2px;
  192. }
  193. .fc-popover .fc-header .fc-close {
  194. cursor: pointer;
  195. }
  196. .fc-ltr .fc-popover .fc-header .fc-title,
  197. .fc-rtl .fc-popover .fc-header .fc-close {
  198. float: left;
  199. }
  200. .fc-rtl .fc-popover .fc-header .fc-title,
  201. .fc-ltr .fc-popover .fc-header .fc-close {
  202. float: right;
  203. }
  204. /* unthemed */
  205. .fc-unthemed .fc-popover {
  206. border-width: 1px;
  207. border-style: solid;
  208. }
  209. .fc-unthemed .fc-popover .fc-header .fc-close {
  210. font-size: 25px;
  211. margin-top: 4px;
  212. }
  213. /* jqui themed */
  214. .fc-popover > .ui-widget-header + .ui-widget-content {
  215. border-top: 0; /* where they meet, let the header have the border */
  216. }
  217. /* Misc Reusable Components
  218. --------------------------------------------------------------------------------------------------*/
  219. .fc hr {
  220. height: 0;
  221. margin: 0;
  222. padding: 0 0 2px; /* height is unreliable across browsers, so use padding */
  223. border-style: solid;
  224. border-width: 1px 0;
  225. }
  226. .fc-clear {
  227. clear: both;
  228. }
  229. .fc-bg,
  230. .fc-bgevent-skeleton,
  231. .fc-highlight-skeleton,
  232. .fc-helper-skeleton {
  233. /* these element should always cling to top-left/right corners */
  234. position: absolute;
  235. top: 0;
  236. left: 0;
  237. right: 0;
  238. }
  239. .fc-bg {
  240. bottom: 0; /* strech bg to bottom edge */
  241. }
  242. .fc-bg table {
  243. height: 100%; /* strech bg to bottom edge */
  244. }
  245. /* Tables
  246. --------------------------------------------------------------------------------------------------*/
  247. .fc table {
  248. width: 100%;
  249. table-layout: fixed;
  250. border-collapse: collapse;
  251. border-spacing: 0;
  252. font-size: 1em; /* normalize cross-browser */
  253. }
  254. .fc th {
  255. text-align: center;
  256. }
  257. .fc th,
  258. .fc td {
  259. border-style: solid;
  260. border-width: 1px;
  261. padding: 0;
  262. vertical-align: top;
  263. }
  264. .fc td.fc-today {
  265. border-style: double; /* overcome neighboring borders */
  266. }
  267. /* Fake Table Rows
  268. --------------------------------------------------------------------------------------------------*/
  269. .fc .fc-row { /* extra precedence to overcome themes w/ .ui-widget-content forcing a 1px border */
  270. /* no visible border by default. but make available if need be (scrollbar width compensation) */
  271. border-style: solid;
  272. border-width: 0;
  273. }
  274. .fc-row table {
  275. /* don't put left/right border on anything within a fake row.
  276. the outer tbody will worry about this */
  277. border-left: 0 hidden transparent;
  278. border-right: 0 hidden transparent;
  279. /* no bottom borders on rows */
  280. border-bottom: 0 hidden transparent;
  281. }
  282. .fc-row:first-child table {
  283. border-top: 0 hidden transparent; /* no top border on first row */
  284. }
  285. /* Day Row (used within the header and the DayGrid)
  286. --------------------------------------------------------------------------------------------------*/
  287. .fc-row {
  288. position: relative;
  289. }
  290. .fc-row .fc-bg {
  291. z-index: 1;
  292. }
  293. /* highlighting cells & background event skeleton */
  294. .fc-row .fc-bgevent-skeleton,
  295. .fc-row .fc-highlight-skeleton {
  296. bottom: 0; /* stretch skeleton to bottom of row */
  297. }
  298. .fc-row .fc-bgevent-skeleton table,
  299. .fc-row .fc-highlight-skeleton table {
  300. height: 100%; /* stretch skeleton to bottom of row */
  301. }
  302. .fc-row .fc-highlight-skeleton td,
  303. .fc-row .fc-bgevent-skeleton td {
  304. border-color: transparent;
  305. }
  306. .fc-row .fc-bgevent-skeleton {
  307. z-index: 2;
  308. }
  309. .fc-row .fc-highlight-skeleton {
  310. z-index: 3;
  311. }
  312. /*
  313. row content (which contains day/week numbers and events) as well as "helper" (which contains
  314. temporary rendered events).
  315. */
  316. .fc-row .fc-content-skeleton {
  317. position: relative;
  318. z-index: 4;
  319. padding-bottom: 2px; /* matches the space above the events */
  320. }
  321. .fc-row .fc-helper-skeleton {
  322. z-index: 5;
  323. }
  324. .fc-row .fc-content-skeleton td,
  325. .fc-row .fc-helper-skeleton td {
  326. /* see-through to the background below */
  327. background: none; /* in case <td>s are globally styled */
  328. border-color: transparent;
  329. /* don't put a border between events and/or the day number */
  330. border-bottom: 0;
  331. }
  332. .fc-row .fc-content-skeleton tbody td, /* cells with events inside (so NOT the day number cell) */
  333. .fc-row .fc-helper-skeleton tbody td {
  334. /* don't put a border between event cells */
  335. border-top: 0;
  336. }
  337. /* Scrolling Container
  338. --------------------------------------------------------------------------------------------------*/
  339. .fc-scroller { /* this class goes on elements for guaranteed vertical scrollbars */
  340. overflow-y: scroll;
  341. overflow-x: hidden;
  342. }
  343. .fc-scroller > * { /* we expect an immediate inner element */
  344. position: relative; /* re-scope all positions */
  345. width: 100%; /* hack to force re-sizing this inner element when scrollbars appear/disappear */
  346. overflow: hidden; /* don't let negative margins or absolute positioning create further scroll */
  347. }
  348. /* Global Event Styles
  349. --------------------------------------------------------------------------------------------------*/
  350. .fc-event {
  351. position: relative; /* for resize handle and other inner positioning */
  352. display: block; /* make the <a> tag block */
  353. font-size: .85em;
  354. line-height: 1.3;
  355. border-radius: 3px;
  356. border: 1px solid #3a87ad; /* default BORDER color */
  357. background-color: #3a87ad; /* default BACKGROUND color */
  358. font-weight: normal; /* undo jqui's ui-widget-header bold */
  359. }
  360. /* overpower some of bootstrap's and jqui's styles on <a> tags */
  361. .fc-event,
  362. .fc-event:hover,
  363. .ui-widget .fc-event {
  364. color: #fff; /* default TEXT color */
  365. text-decoration: none; /* if <a> has an href */
  366. }
  367. .fc-event[href],
  368. .fc-event.fc-draggable {
  369. cursor: pointer; /* give events with links and draggable events a hand mouse pointer */
  370. }
  371. .fc-not-allowed, /* causes a "warning" cursor. applied on body */
  372. .fc-not-allowed .fc-event { /* to override an event's custom cursor */
  373. cursor: not-allowed;
  374. }
  375. /* DayGrid events
  376. ----------------------------------------------------------------------------------------------------
  377. We use the full "fc-day-grid-event" class instead of using descendants because the event won't
  378. be a descendant of the grid when it is being dragged.
  379. */
  380. .fc-day-grid-event {
  381. margin: 1px 2px 0; /* spacing between events and edges */
  382. padding: 0 1px;
  383. }
  384. /* events that are continuing to/from another week. kill rounded corners and butt up against edge */
  385. .fc-ltr .fc-day-grid-event.fc-not-start,
  386. .fc-rtl .fc-day-grid-event.fc-not-end {
  387. margin-left: 0;
  388. border-left-width: 0;
  389. padding-left: 1px; /* replace the border with padding */
  390. border-top-left-radius: 0;
  391. border-bottom-left-radius: 0;
  392. }
  393. .fc-ltr .fc-day-grid-event.fc-not-end,
  394. .fc-rtl .fc-day-grid-event.fc-not-start {
  395. margin-right: 0;
  396. border-right-width: 0;
  397. padding-right: 1px; /* replace the border with padding */
  398. border-top-right-radius: 0;
  399. border-bottom-right-radius: 0;
  400. }
  401. .fc-day-grid-event > .fc-content { /* force events to be one-line tall */
  402. white-space: nowrap;
  403. overflow: hidden;
  404. }
  405. .fc-day-grid-event .fc-time {
  406. font-weight: bold;
  407. }
  408. /* resize handle (outside of fc-content, so can go outside of bounds) */
  409. .fc-day-grid-event .fc-resizer {
  410. position: absolute;
  411. top: 0;
  412. bottom: 0;
  413. width: 7px;
  414. }
  415. .fc-ltr .fc-day-grid-event .fc-resizer {
  416. right: -3px;
  417. cursor: e-resize;
  418. }
  419. .fc-rtl .fc-day-grid-event .fc-resizer {
  420. left: -3px;
  421. cursor: w-resize;
  422. }
  423. /* Event Limiting
  424. --------------------------------------------------------------------------------------------------*/
  425. /* "more" link that represents hidden events */
  426. a.fc-more {
  427. margin: 1px 3px;
  428. font-size: .85em;
  429. cursor: pointer;
  430. text-decoration: none;
  431. }
  432. a.fc-more:hover {
  433. text-decoration: underline;
  434. }
  435. .fc-limited { /* rows and cells that are hidden because of a "more" link */
  436. display: none;
  437. }
  438. /* popover that appears when "more" link is clicked */
  439. .fc-day-grid .fc-row {
  440. z-index: 1; /* make the "more" popover one higher than this */
  441. }
  442. .fc-more-popover {
  443. z-index: 2;
  444. width: 220px;
  445. }
  446. .fc-more-popover .fc-event-container {
  447. padding: 10px;
  448. }
  449. /* Toolbar
  450. --------------------------------------------------------------------------------------------------*/
  451. .fc-toolbar {
  452. text-align: center;
  453. margin-bottom: 1em;
  454. }
  455. .fc-toolbar .fc-left {
  456. float: left;
  457. }
  458. .fc-toolbar .fc-right {
  459. float: right;
  460. }
  461. .fc-toolbar .fc-center {
  462. display: inline-block;
  463. }
  464. /* the things within each left/right/center section */
  465. .fc .fc-toolbar > * > * { /* extra precedence to override button border margins */
  466. float: left;
  467. margin-left: .75em;
  468. }
  469. /* the first thing within each left/center/right section */
  470. .fc .fc-toolbar > * > :first-child { /* extra precedence to override button border margins */
  471. margin-left: 0;
  472. }
  473. /* title text */
  474. .fc-toolbar h2 {
  475. margin: 0;
  476. }
  477. /* button layering (for border precedence) */
  478. .fc-toolbar button {
  479. position: relative;
  480. }
  481. .fc-toolbar .fc-state-hover,
  482. .fc-toolbar .ui-state-hover {
  483. z-index: 2;
  484. }
  485. .fc-toolbar .fc-state-down {
  486. z-index: 3;
  487. }
  488. .fc-toolbar .fc-state-active,
  489. .fc-toolbar .ui-state-active {
  490. z-index: 4;
  491. }
  492. .fc-toolbar button:focus {
  493. z-index: 5;
  494. }
  495. /* View Structure
  496. --------------------------------------------------------------------------------------------------*/
  497. /* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
  498. /* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
  499. .fc-view-container *,
  500. .fc-view-container *:before,
  501. .fc-view-container *:after {
  502. -webkit-box-sizing: content-box;
  503. -moz-box-sizing: content-box;
  504. box-sizing: content-box;
  505. }
  506. .fc-view, /* scope positioning and z-index's for everything within the view */
  507. .fc-view > table { /* so dragged elements can be above the view's main element */
  508. position: relative;
  509. z-index: 1;
  510. }
  511. /* BasicView
  512. --------------------------------------------------------------------------------------------------*/
  513. /* day row structure */
  514. .fc-basicWeek-view .fc-content-skeleton,
  515. .fc-basicDay-view .fc-content-skeleton {
  516. /* we are sure there are no day numbers in these views, so... */
  517. padding-top: 1px; /* add a pixel to make sure there are 2px padding above events */
  518. padding-bottom: 1em; /* ensure a space at bottom of cell for user selecting/clicking */
  519. }
  520. .fc-basic-view tbody .fc-row {
  521. min-height: 4em; /* ensure that all rows are at least this tall */
  522. }
  523. /* a "rigid" row will take up a constant amount of height because content-skeleton is absolute */
  524. .fc-row.fc-rigid {
  525. overflow: hidden;
  526. }
  527. .fc-row.fc-rigid .fc-content-skeleton {
  528. position: absolute;
  529. top: 0;
  530. left: 0;
  531. right: 0;
  532. }
  533. /* week and day number styling */
  534. .fc-basic-view .fc-week-number,
  535. .fc-basic-view .fc-day-number {
  536. padding: 0 2px;
  537. }
  538. .fc-basic-view td.fc-week-number span,
  539. .fc-basic-view td.fc-day-number {
  540. padding-top: 2px;
  541. padding-bottom: 2px;
  542. }
  543. .fc-basic-view .fc-week-number {
  544. text-align: center;
  545. }
  546. .fc-basic-view .fc-week-number span {
  547. /* work around the way we do column resizing and ensure a minimum width */
  548. display: inline-block;
  549. min-width: 1.25em;
  550. }
  551. .fc-ltr .fc-basic-view .fc-day-number {
  552. text-align: right;
  553. }
  554. .fc-rtl .fc-basic-view .fc-day-number {
  555. text-align: left;
  556. }
  557. .fc-day-number.fc-other-month {
  558. opacity: 0.3;
  559. filter: alpha(opacity=30); /* for IE */
  560. /* opacity with small font can sometimes look too faded
  561. might want to set the 'color' property instead
  562. making day-numbers bold also fixes the problem */
  563. }
  564. /* AgendaView all-day area
  565. --------------------------------------------------------------------------------------------------*/
  566. .fc-agenda-view .fc-day-grid {
  567. position: relative;
  568. z-index: 2; /* so the "more.." popover will be over the time grid */
  569. }
  570. .fc-agenda-view .fc-day-grid .fc-row {
  571. min-height: 3em; /* all-day section will never get shorter than this */
  572. }
  573. .fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
  574. padding-top: 1px; /* add a pixel to make sure there are 2px padding above events */
  575. padding-bottom: 1em; /* give space underneath events for clicking/selecting days */
  576. }
  577. /* TimeGrid axis running down the side (for both the all-day area and the slot area)
  578. --------------------------------------------------------------------------------------------------*/
  579. .fc .fc-axis { /* .fc to overcome default cell styles */
  580. vertical-align: middle;
  581. padding: 0 4px;
  582. white-space: nowrap;
  583. }
  584. .fc-ltr .fc-axis {
  585. text-align: right;
  586. }
  587. .fc-rtl .fc-axis {
  588. text-align: left;
  589. }
  590. .ui-widget td.fc-axis {
  591. font-weight: normal; /* overcome jqui theme making it bold */
  592. }
  593. /* TimeGrid Structure
  594. --------------------------------------------------------------------------------------------------*/
  595. .fc-time-grid-container, /* so scroll container's z-index is below all-day */
  596. .fc-time-grid { /* so slats/bg/content/etc positions get scoped within here */
  597. position: relative;
  598. z-index: 1;
  599. }
  600. .fc-time-grid {
  601. min-height: 100%; /* so if height setting is 'auto', .fc-bg stretches to fill height */
  602. }
  603. .fc-time-grid table { /* don't put outer borders on slats/bg/content/etc */
  604. border: 0 hidden transparent;
  605. }
  606. .fc-time-grid > .fc-bg {
  607. z-index: 1;
  608. }
  609. .fc-time-grid .fc-slats,
  610. .fc-time-grid > hr { /* the <hr> AgendaView injects when grid is shorter than scroller */
  611. position: relative;
  612. z-index: 2;
  613. }
  614. .fc-time-grid .fc-bgevent-skeleton,
  615. .fc-time-grid .fc-content-skeleton {
  616. position: absolute;
  617. top: 0;
  618. left: 0;
  619. right: 0;
  620. }
  621. .fc-time-grid .fc-bgevent-skeleton {
  622. z-index: 3;
  623. }
  624. .fc-time-grid .fc-highlight-skeleton {
  625. z-index: 4;
  626. }
  627. .fc-time-grid .fc-content-skeleton {
  628. z-index: 5;
  629. }
  630. .fc-time-grid .fc-helper-skeleton {
  631. z-index: 6;
  632. }
  633. /* TimeGrid Slats (lines that run horizontally)
  634. --------------------------------------------------------------------------------------------------*/
  635. .fc-slats td {
  636. height: 1.5em;
  637. border-bottom: 0; /* each cell is responsible for its top border */
  638. }
  639. .fc-slats .fc-minor td {
  640. border-top-style: dotted;
  641. }
  642. .fc-slats .ui-widget-content { /* for jqui theme */
  643. background: none; /* see through to fc-bg */
  644. }
  645. /* TimeGrid Highlighting Slots
  646. --------------------------------------------------------------------------------------------------*/
  647. .fc-time-grid .fc-highlight-container { /* a div within a cell within the fc-highlight-skeleton */
  648. position: relative; /* scopes the left/right of the fc-highlight to be in the column */
  649. }
  650. .fc-time-grid .fc-highlight {
  651. position: absolute;
  652. left: 0;
  653. right: 0;
  654. /* top and bottom will be in by JS */
  655. }
  656. /* TimeGrid Event Containment
  657. --------------------------------------------------------------------------------------------------*/
  658. .fc-time-grid .fc-event-container, /* a div within a cell within the fc-content-skeleton */
  659. .fc-time-grid .fc-bgevent-container { /* a div within a cell within the fc-bgevent-skeleton */
  660. position: relative;
  661. }
  662. .fc-ltr .fc-time-grid .fc-event-container { /* space on the sides of events for LTR (default) */
  663. margin: 0 2.5% 0 2px;
  664. }
  665. .fc-rtl .fc-time-grid .fc-event-container { /* space on the sides of events for RTL */
  666. margin: 0 2px 0 2.5%;
  667. }
  668. .fc-time-grid .fc-event,
  669. .fc-time-grid .fc-bgevent {
  670. position: absolute;
  671. z-index: 1; /* scope inner z-index's */
  672. }
  673. .fc-time-grid .fc-bgevent {
  674. /* background events always span full width */
  675. left: 0;
  676. right: 0;
  677. }
  678. /* TimeGrid Event Styling
  679. ----------------------------------------------------------------------------------------------------
  680. We use the full "fc-time-grid-event" class instead of using descendants because the event won't
  681. be a descendant of the grid when it is being dragged.
  682. */
  683. .fc-time-grid-event.fc-not-start { /* events that are continuing from another day */
  684. /* replace space made by the top border with padding */
  685. border-top-width: 0;
  686. padding-top: 1px;
  687. /* remove top rounded corners */
  688. border-top-left-radius: 0;
  689. border-top-right-radius: 0;
  690. }
  691. .fc-time-grid-event.fc-not-end {
  692. /* replace space made by the top border with padding */
  693. border-bottom-width: 0;
  694. padding-bottom: 1px;
  695. /* remove bottom rounded corners */
  696. border-bottom-left-radius: 0;
  697. border-bottom-right-radius: 0;
  698. }
  699. .fc-time-grid-event {
  700. overflow: hidden; /* don't let the bg flow over rounded corners */
  701. }
  702. .fc-time-grid-event > .fc-content { /* contains the time and title, but no bg and resizer */
  703. position: relative;
  704. z-index: 2; /* above the bg */
  705. }
  706. .fc-time-grid-event .fc-time,
  707. .fc-time-grid-event .fc-title {
  708. padding: 0 1px;
  709. }
  710. .fc-time-grid-event .fc-time {
  711. font-size: .85em;
  712. white-space: nowrap;
  713. }
  714. .fc-time-grid-event .fc-bg {
  715. z-index: 1;
  716. background: #fff;
  717. opacity: .25;
  718. filter: alpha(opacity=25); /* for IE */
  719. }
  720. /* short mode, where time and title are on the same line */
  721. .fc-time-grid-event.fc-short .fc-content {
  722. /* don't wrap to second line (now that contents will be inline) */
  723. white-space: nowrap;
  724. }
  725. .fc-time-grid-event.fc-short .fc-time,
  726. .fc-time-grid-event.fc-short .fc-title {
  727. /* put the time and title on the same line */
  728. display: inline-block;
  729. vertical-align: top;
  730. }
  731. .fc-time-grid-event.fc-short .fc-time span {
  732. display: none; /* don't display the full time text... */
  733. }
  734. .fc-time-grid-event.fc-short .fc-time:before {
  735. content: attr(data-start); /* ...instead, display only the start time */
  736. }
  737. .fc-time-grid-event.fc-short .fc-time:after {
  738. content: "\000A0-\000A0"; /* seperate with a dash, wrapped in nbsp's */
  739. }
  740. .fc-time-grid-event.fc-short .fc-title {
  741. font-size: .85em; /* make the title text the same size as the time */
  742. padding: 0; /* undo padding from above */
  743. }
  744. /* resizer */
  745. .fc-time-grid-event .fc-resizer {
  746. position: absolute;
  747. z-index: 3; /* above content */
  748. left: 0;
  749. right: 0;
  750. bottom: 0;
  751. height: 8px;
  752. overflow: hidden;
  753. line-height: 8px;
  754. font-size: 11px;
  755. font-family: monospace;
  756. text-align: center;
  757. cursor: s-resize;
  758. }
  759. .fc-time-grid-event .fc-resizer:after {
  760. content: "=";
  761. }