城市监控的项目,网页调用监控摄像头,并需要replay的日期和时间选择calendar.找了半天,找到一个好东东~~~~bootstrap-datetimepicker, UI也很有型的范,就用它吧~~,
一切顺利,就是这个calendar的弹出框只能在下方,而我需要嵌套在摄像头监控屏幕下的工具条上,如果弹出框在下方就太离谱了,最后决定改,哈就成就今天这个calendar啦,自我感觉效果不错,晒出来装一下B~~~~哈
更改的bootstrap-datetimepicker.js
/** * @license * ========================================================= * bootstrap-datetimepicker.js * http://www.eyecon.ro/bootstrap-datepicker * ========================================================= * Copyright 2012 Stefan Petre * * Contributions: * - Andrew Rowls * - Thiago de Arruda * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ========================================================= */ (function($) { var smartPhone = window.orientation != undefined; var DateTimePicker = function(element, options) { this.id = dpgId++; this.init(element, options) }; var dateToDate = function(dt) { if (typeof dt === "string") { return new Date(dt) } return dt }; DateTimePicker.prototype = { constructor: DateTimePicker, init: function(element, options) { var icon; if (!(options.pickTime || options.pickDate)) throw new Error("Must choose at least one picker"); this.options = options; this.$element = $(element); this.language = options.language in dates ? options.language : "en"; this.pickDate = options.pickDate; this.pickTime = options.pickTime; this.isInput = this.$element.is("input"); this.component = false; if (this.$element.find(".input-append") || this.$element.find(".input-prepend")) this.component = this.$element.find(".add-on"); this.format = options.format; if (!this.format) { if (this.isInput) this.format = this.$element.data("format"); else this.format = this.$element.find("input").data("format"); if (!this.format) this.format = "MM/dd/yyyy" } this._compileFormat(); if (this.component) { icon = this.component.find("i") } if (this.pickTime) { if (icon && icon.length) this.timeIcon = icon.data("time-icon"); if (!this.timeIcon) this.timeIcon = "icon-time"; icon.addClass(this.timeIcon) } if (this.pickDate) { if (icon && icon.length) this.dateIcon = icon.data("date-icon"); if (!this.dateIcon) this.dateIcon = "icon-calendar"; icon.removeClass(this.timeIcon); icon.addClass(this.dateIcon) } this.widget = $(getTemplate(this.timeIcon, options.pickDate, options.pickTime, options.pick12HourFormat, options.pickSeconds, options.collapse)).appendTo("body"); this.minViewMode = options.minViewMode || this.$element.data("date-minviewmode") || 0; if (typeof this.minViewMode === "string") { switch (this.minViewMode) { case "months": this.minViewMode = 1; break; case "years": this.minViewMode = 2; break; default: this.minViewMode = 0; break } } this.viewMode = options.viewMode || this.$element.data("date-viewmode") || 0; if (typeof this.viewMode === "string") { switch (this.viewMode) { case "months": this.viewMode = 1; break; case "years": this.viewMode = 2; break; default: this.viewMode = 0; break } } this.startViewMode = this.viewMode; this.weekStart = options.weekStart || this.$element.data("date-weekstart") || 0; this.weekEnd = this.weekStart === 0 ? 6 : this.weekStart - 1; this.setStartDate(options.startDate || this.$element.data("date-startdate")); this.setEndDate(options.endDate || this.$element.data("date-enddate")); this.fillDow(); this.fillMonths(); this.fillHours(); this.fillMinutes(); this.fillSeconds(); this.update(); this.showMode(); this._attachDatePickerEvents(this.widget) }, show: function(e) { this.widget.show(); this.height = this.component ? this.component.outerHeight() : this.$element.outerHeight(); this.place(); this.$element.trigger({ type: "show", date: this._date }); this._attachDatePickerGlobalEvents(); if (e) { e.stopPropagation(); e.preventDefault() } }, disable: function() { this.$element.find("input").prop("disabled", true); this._detachDatePickerEvents() }, enable: function() { this.$element.find("input").prop("disabled", false); this._attachDatePickerEvents(this.widget) }, hide: function() { var collapse = this.widget.find(".collapse"); for (var i = 0; i < collapse.length; i++) { var collapseData = collapse.eq(i).data("collapse"); if (collapseData && collapseData.transitioning) return } this.widget.hide(); this.viewMode = this.startViewMode; this.showMode(); this.set(); this.$element.trigger({ type: "hide", date: this._date }); this._detachDatePickerGlobalEvents() }, set: function() { var formatted = ""; if (!this._unset) formatted = this.formatDate(this._date); if (!this.isInput) { if (this.component) { var input = this.$element.find("input"); input.val(formatted); /****yilei add for display time*****/ var displayObj=this.widget.find("#temp-display-datetime span"); displayObj.html(input.val()); /*********add end************/ this._resetMaskPos(input); } this.$element.data("date", formatted) } else { this.$element.val(formatted); this._resetMaskPos(this.$element) } }, setValue: function(newDate) { if (!newDate) { this._unset = true } else { this._unset = false } if (typeof newDate === "string") { this._date = this.parseDate(newDate) } else if (newDate) { this._date = new Date(newDate) } this.set(); this.viewDate = UTCDate(this._date.getUTCFullYear(), this._date.getUTCMonth(), 1, 0, 0, 0, 0); this.fillDate(); this.fillTime() }, getDate: function() { if (this._unset) return null; return new Date(this._date.valueOf()) }, setDate: function(date) { if (!date) this.setValue(null); else this.setValue(date.valueOf()) }, setStartDate: function(date) { if (date instanceof Date) { this.startDate = date } else if (typeof date === "string") { this.startDate = new UTCDate(date); if (!this.startDate.getUTCFullYear()) { this.startDate = -Infinity } } else { this.startDate = -Infinity } if (this.viewDate) { this.update() } }, setEndDate: function(date) { if (date instanceof Date) { this.endDate = date } else if (typeof date === "string") { this.endDate = new UTCDate(date); if (!this.endDate.getUTCFullYear()) { this.endDate = Infinity } } else { this.endDate = Infinity } if (this.viewDate) { this.update() } }, getLocalDate: function() { if (this._unset) return null; var d = this._date; return new Date(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate(), d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), d.getUTCMilliseconds()) }, setLocalDate: function(localDate) { if (!localDate) this.setValue(null); else this.setValue(Date.UTC(localDate.getFullYear(), localDate.getMonth(), localDate.getDate(), localDate.getHours(), localDate.getMinutes(), localDate.getSeconds(), localDate.getMilliseconds())) }, place: function() { var position = "absolute"; var offset = this.component ? this.component.offset() : this.$element.offset(); this.width = this.component ? this.component.outerWidth() : this.$element.outerWidth(); offset.top = offset.top + this.height; var $window = $(window); if (this.options.width != undefined) { this.widget.width(this.options.width) } if (this.options.orientation == "left") { this.widget.addClass("left-oriented"); offset.left = offset.left - this.widget.width() + 20 } else if(this.options.orientation == "top") { var widgetH=parseInt(this.widget.css("height")); offset.top=offset.top-widgetH-this.height-10; this.widget.removeClass("bootstrap-datetimepicker-widget"); this.widget.addClass("bootstrap-datetimepicker-widget-top"); } if (this._isInFixed()) { position = "fixed"; offset.top -= $window.scrollTop(); offset.left -= $window.scrollLeft() } if ($window.width() < offset.left + this.widget.outerWidth()) { offset.right = $window.width() - offset.left - this.width; offset.left = "auto"; this.widget.addClass("pull-right") } else { offset.right = "auto"; this.widget.removeClass("pull-right") } this.widget.css({ position: position, top: offset.top, left: offset.left, right: offset.right }) }, notifyChange: function() { this.$element.trigger({ type: "changeDate", date: this.getDate(), localDate: this.getLocalDate() }) }, update: function(newDate) { var dateStr = newDate; if (!dateStr) { if (this.isInput) { dateStr = this.$element.val() } else { dateStr = this.$element.find("input").val() } if (dateStr) { this._date = this.parseDate(dateStr) } if (!this._date) { var tmp = new Date; this._date = UTCDate(tmp.getFullYear(), tmp.getMonth(), tmp.getDate(), tmp.getHours(), tmp.getMinutes(), tmp.getSeconds(), tmp.getMilliseconds()) } } this.viewDate = UTCDate(this._date.getUTCFullYear(), this._date.getUTCMonth(), 1, 0, 0, 0, 0); this.fillDate(); this.fillTime() }, fillDow: function() { var dowCnt = this.weekStart; var html = $("<tr>"); while (dowCnt < this.weekStart + 7) { html.append('<th class="dow">' + dates[this.language].daysMin[dowCnt++ % 7] + "</th>") } this.widget.find(".datepicker-days thead").append(html) }, fillMonths: function() { var html = ""; var i = 0; while (i < 12) { html += '<span class="month">' + dates[this.language].monthsShort[i++] + "</span>" } this.widget.find(".datepicker-months td").append(html) }, fillDate: function() { var year = this.viewDate.getUTCFullYear(); var month = this.viewDate.getUTCMonth(); var currentDate = UTCDate(this._date.getUTCFullYear(), this._date.getUTCMonth(), this._date.getUTCDate(), 0, 0, 0, 0); var startYear = typeof this.startDate === "object" ? this.startDate.getUTCFullYear() : -Infinity; var startMonth = typeof this.startDate === "object" ? this.startDate.getUTCMonth() : -1; var endYear = typeof this.endDate === "object" ? this.endDate.getUTCFullYear() : Infinity; var endMonth = typeof this.endDate === "object" ? this.endDate.getUTCMonth() : 12; this.widget.find(".datepicker-days").find(".disabled").removeClass("disabled"); this.widget.find(".datepicker-months").find(".disabled").removeClass("disabled"); this.widget.find(".datepicker-years").find(".disabled").removeClass("disabled"); this.widget.find(".datepicker-days th:eq(1)").text(dates[this.language].months[month] + " " + year); var prevMonth = UTCDate(year, month - 1, 28, 0, 0, 0, 0); var day = DPGlobal.getDaysInMonth(prevMonth.getUTCFullYear(), prevMonth.getUTCMonth()); prevMonth.setUTCDate(day); prevMonth.setUTCDate(day - (prevMonth.getUTCDay() - this.weekStart + 7) % 7); if (year == startYear && month <= startMonth || year < startYear) { this.widget.find(".datepicker-days th:eq(0)").addClass("disabled") } if (year == endYear && month >= endMonth || year > endYear) { this.widget.find(".datepicker-days th:eq(2)").addClass("disabled") } var nextMonth = new Date(prevMonth.valueOf()); nextMonth.setUTCDate(nextMonth.getUTCDate() + 42); nextMonth = nextMonth.valueOf(); var html = []; var row; var clsName; while (prevMonth.valueOf() < nextMonth) { if (prevMonth.getUTCDay() === this.weekStart) { row = $("<tr>"); html.push(row) } clsName = ""; if (prevMonth.getUTCFullYear() < year || prevMonth.getUTCFullYear() == year && prevMonth.getUTCMonth() < month) { clsName += " old" } else if (prevMonth.getUTCFullYear() > year || prevMonth.getUTCFullYear() == year && prevMonth.getUTCMonth() > month) { clsName += " new" } if (prevMonth.valueOf() === currentDate.valueOf()) { clsName += " active" } if (prevMonth.valueOf() + 864e5 <= this.startDate) { clsName += " disabled" } if (prevMonth.valueOf() > this.endDate) { clsName += " disabled" } row.append('<td class="day' + clsName + '">' + prevMonth.getUTCDate() + "</td>"); prevMonth.setUTCDate(prevMonth.getUTCDate() + 1) } this.widget.find(".datepicker-days tbody").empty().append(html); var currentYear = this._date.getUTCFullYear(); var months = this.widget.find(".datepicker-months").find("th:eq(1)").text(year).end().find("span").removeClass("active"); if (currentYear === year) { months.eq(this._date.getUTCMonth()).addClass("active") } if (currentYear - 1 < startYear) { this.widget.find(".datepicker-months th:eq(0)").addClass("disabled") } if (currentYear + 1 > endYear) { this.widget.find(".datepicker-months th:eq(2)").addClass("disabled") } for (var i = 0; i < 12; i++) { if (year == startYear && startMonth > i || year < startYear) { $(months[i]).addClass("disabled") } else if (year == endYear && endMonth < i || year > endYear) { $(months[i]).addClass("disabled") } } html = ""; year = parseInt(year / 10, 10) * 10; var yearCont = this.widget.find(".datepicker-years").find("th:eq(1)").text(year + "-" + (year + 9)).end().find("td"); this.widget.find(".datepicker-years").find("th").removeClass("disabled"); if (startYear > year) { this.widget.find(".datepicker-years").find("th:eq(0)").addClass("disabled") } if (endYear < year + 9) { this.widget.find(".datepicker-years").find("th:eq(2)").addClass("disabled") } year -= 1; for (var i = -1; i < 11; i++) { html += '<span class="year' + (i === -1 || i === 10 ? " old" : "") + (currentYear === year ? " active" : "") + (year < startYear || year > endYear ? " disabled" : "") + '">' + year + "</span>"; year += 1 } yearCont.html(html) }, fillHours: function() { var table = this.widget.find(".timepicker .timepicker-hours table"); table.parent().hide(); var html = ""; if (this.options.pick12HourFormat) { var current = 1; for (var i = 0; i < 3; i += 1) { html += "<tr>"; for (var j = 0; j < 4; j += 1) { var c = current.toString(); html += '<td class="hour">' + padLeft(c, 2, "0") + "</td>"; current++ } html += "</tr>" } } else { var current = 0; for (var i = 0; i < 6; i += 1) { html += "<tr>"; for (var j = 0; j < 4; j += 1) { var c = current.toString(); html += '<td class="hour">' + padLeft(c, 2, "0") + "</td>"; current++ } html += "</tr>" } } table.html(html) }, fillMinutes: function() { var table = this.widget.find(".timepicker .timepicker-minutes table"); table.parent().hide(); var html = ""; var current = 0; for (var i = 0; i < 5; i++) { html += "<tr>"; for (var j = 0; j < 4; j += 1) { var c = current.toString(); html += '<td class="minute">' + padLeft(c, 2, "0") + "</td>"; current += 3 } html += "</tr>" } table.html(html) }, fillSeconds: function() { var table = this.widget.find(".timepicker .timepicker-seconds table"); table.parent().hide(); var html = ""; var current = 0; for (var i = 0; i < 5; i++) { html += "<tr>"; for (var j = 0; j < 4; j += 1) { var c = current.toString(); html += '<td class="second">' + padLeft(c, 2, "0") + "</td>"; current += 3 } html += "</tr>" } table.html(html) }, fillTime: function() { if (!this._date) return; var timeComponents = this.widget.find(".timepicker span[data-time-component]"); var table = timeComponents.closest("table"); var is12HourFormat = this.options.pick12HourFormat; var hour = this._date.getUTCHours(); var period = "AM"; if (is12HourFormat) { if (hour >= 12) period = "PM"; if (hour === 0) hour = 12; else if (hour != 12) hour = hour % 12; this.widget.find(".timepicker [data-action=togglePeriod]").text(period) } hour = padLeft(hour.toString(), 2, "0"); var minute = padLeft(this._date.getUTCMinutes().toString(), 2, "0"); var second = padLeft(this._date.getUTCSeconds().toString(), 2, "0"); timeComponents.filter("[data-time-component=hours]").text(hour); timeComponents.filter("[data-time-component=minutes]").text(minute); timeComponents.filter("[data-time-component=seconds]").text(second) }, click: function(e) { e.stopPropagation(); e.preventDefault(); this._unset = false; var target = $(e.target).closest("span, td, th"); if (target.length === 1) { if (!target.is(".disabled")) { switch (target[0].nodeName.toLowerCase()) { case "th": switch (target[0].className) { case "switch": this.showMode(1); break; case "prev": case "next": var vd = this.viewDate; var navFnc = DPGlobal.modes[this.viewMode].navFnc; var step = DPGlobal.modes[this.viewMode].navStep; if (target[0].className === "prev") step = step * -1; vd["set" + navFnc](vd["get" + navFnc]() + step); this.fillDate(); this.set(); break } break; case "span": if (target.is(".month")) { var month = target.parent().find("span").index(target); this.viewDate.setUTCMonth(month) } else { var year = parseInt(target.text(), 10) || 0; this.viewDate.setUTCFullYear(year) } if (this.viewMode !== 0) { this._date = UTCDate(this.viewDate.getUTCFullYear(), this.viewDate.getUTCMonth(), this.viewDate.getUTCDate(), this._date.getUTCHours(), this._date.getUTCMinutes(), this._date.getUTCSeconds(), this._date.getUTCMilliseconds()); this.notifyChange() } this.showMode(-1); this.fillDate(); this.set(); break; case "td": if (target.is(".day")) { var day = parseInt(target.text(), 10) || 1; var month = this.viewDate.getUTCMonth(); var year = this.viewDate.getUTCFullYear(); if (target.is(".old")) { if (month === 0) { month = 11; year -= 1 } else { month -= 1 } } else if (target.is(".new")) { if (month == 11) { month = 0; year += 1 } else { month += 1 } } this._date = UTCDate(year, month, day, this._date.getUTCHours(), this._date.getUTCMinutes(), this._date.getUTCSeconds(), this._date.getUTCMilliseconds()); this.viewDate = UTCDate(year, month, Math.min(28, day), 0, 0, 0, 0); this.fillDate(); this.set(); this.notifyChange() } break } } } }, actions: { incrementHours: function(e) { this._date.setUTCHours(this._date.getUTCHours() + 1) }, incrementMinutes: function(e) { this._date.setUTCMinutes(this._date.getUTCMinutes() + 1) }, incrementSeconds: function(e) { this._date.setUTCSeconds(this._date.getUTCSeconds() + 1) }, decrementHours: function(e) { this._date.setUTCHours(this._date.getUTCHours() - 1) }, decrementMinutes: function(e) { this._date.setUTCMinutes(this._date.getUTCMinutes() - 1) }, decrementSeconds: function(e) { this._date.setUTCSeconds(this._date.getUTCSeconds() - 1) }, togglePeriod: function(e) { var hour = this._date.getUTCHours(); if (hour >= 12) hour -= 12; else hour += 12; this._date.setUTCHours(hour) }, showPicker: function() { this.widget.find(".timepicker > div:not(.timepicker-picker)").hide(); this.widget.find(".timepicker .timepicker-picker").show() }, showHours: function() { this.widget.find(".timepicker .timepicker-picker").hide(); this.widget.find(".timepicker .timepicker-hours").show() }, showMinutes: function() { this.widget.find(".timepicker .timepicker-picker").hide(); this.widget.find(".timepicker .timepicker-minutes").show() }, showSeconds: function() { this.widget.find(".timepicker .timepicker-picker").hide(); this.widget.find(".timepicker .timepicker-seconds").show() }, selectHour: function(e) { var tgt = $(e.target); var value = parseInt(tgt.text(), 10); if (this.options.pick12HourFormat) { var current = this._date.getUTCHours(); if (current >= 12) { if (value != 12) value = (value + 12) % 24 } else { if (value === 12) value = 0; else value = value % 12 } } this._date.setUTCHours(value); this.actions.showPicker.call(this) }, selectMinute: function(e) { var tgt = $(e.target); var value = parseInt(tgt.text(), 10); this._date.setUTCMinutes(value); this.actions.showPicker.call(this) }, selectSecond: function(e) { var tgt = $(e.target); var value = parseInt(tgt.text(), 10); this._date.setUTCSeconds(value); this.actions.showPicker.call(this) } }, doAction: function(e) { e.stopPropagation(); e.preventDefault(); if (!this._date) this._date = UTCDate(1970, 0, 0, 0, 0, 0, 0); var action = $(e.currentTarget).data("action"); var rv = this.actions[action].apply(this, arguments); this.set(); this.fillTime(); this.notifyChange(); return rv }, stopEvent: function(e) { e.stopPropagation(); e.preventDefault() }, keydown: function(e) { var self = this, k = e.which, input = $(e.target); if (k == 8 || k == 46) { setTimeout(function() { self._resetMaskPos(input) }) } }, keypress: function(e) { var k = e.which; if (k == 8 || k == 46) { return } var input = $(e.target); var c = String.fromCharCode(k); var val = input.val() || ""; val += c; var mask = this._mask[this._maskPos]; if (!mask) { return false } if (mask.end != val.length) { return } if (!mask.pattern.test(val.slice(mask.start))) { val = val.slice(0, val.length - 1); while ((mask = this._mask[this._maskPos]) && mask.character) { val += mask.character; this._maskPos++ } val += c; if (mask.end != val.length) { input.val(val); return false } else { if (!mask.pattern.test(val.slice(mask.start))) { input.val(val.slice(0, mask.start)); return false } else { input.val(val); this._maskPos++; return false } } } else { this._maskPos++ } }, change: function(e) { var input = $(e.target); var val = input.val(); if (this._formatPattern.test(val)) { this.update(); this.setValue(this._date.getTime()); this.notifyChange(); this.set() } else if (val && val.trim()) { this.setValue(this._date.getTime()); if (this._date) this.set(); else input.val("") } else { if (this._date) { this.setValue(null); this.notifyChange(); this._unset = true } } this._resetMaskPos(input) }, showMode: function(dir) { if (dir) { this.viewMode = Math.max(this.minViewMode, Math.min(2, this.viewMode + dir)) } this.widget.find(".datepicker > div").hide().filter(".datepicker-" + DPGlobal.modes[this.viewMode].clsName).show() }, destroy: function() { this._detachDatePickerEvents(); this._detachDatePickerGlobalEvents(); this.widget.remove(); this.$element.removeData("datetimepicker"); this.component.removeData("datetimepicker") }, formatDate: function(d) { return this.format.replace(formatReplacer, function(match) { var methodName, property, rv, len = match.length; if (match === "ms") len = 1; property = dateFormatComponents[match].property; if (property === "Hours12") { rv = d.getUTCHours(); if (rv === 0) rv = 12; else if (rv !== 12) rv = rv % 12 } else if (property === "Period12") { if (d.getUTCHours() >= 12) return "PM"; else return "AM" } else { methodName = "get" + property; rv = d[methodName]() } if (methodName === "getUTCMonth") rv = rv + 1; if (methodName === "getUTCYear") rv = rv + 1900 - 2e3; return padLeft(rv.toString(), len, "0") }) }, parseDate: function(str) { var match, i, property, methodName, value, parsed = {}; if (!(match = this._formatPattern.exec(str))) return null; for (i = 1; i < match.length; i++) { property = this._propertiesByIndex[i]; if (!property) continue; value = match[i]; if (/^\d+$/.test(value)) value = parseInt(value, 10); parsed[property] = value } return this._finishParsingDate(parsed) }, _resetMaskPos: function(input) { var val = input.val(); for (var i = 0; i < this._mask.length; i++) { if (this._mask[i].end > val.length) { this._maskPos = i; break } else if (this._mask[i].end === val.length) { this._maskPos = i + 1; break } } }, _finishParsingDate: function(parsed) { var year, month, date, hours, minutes, seconds, milliseconds; year = parsed.UTCFullYear; if (parsed.UTCYear) year = 2e3 + parsed.UTCYear; if (!year) year = 1970; if (parsed.UTCMonth) month = parsed.UTCMonth - 1; else month = 0; date = parsed.UTCDate || 1; hours = parsed.UTCHours || 0; minutes = parsed.UTCMinutes || 0; seconds = parsed.UTCSeconds || 0; milliseconds = parsed.UTCMilliseconds || 0; if (parsed.Hours12) { hours = parsed.Hours12 } if (parsed.Period12) { if (/pm/i.test(parsed.Period12)) { if (hours != 12) hours = (hours + 12) % 24 } else { hours = hours % 12 } } return UTCDate(year, month, date, hours, minutes, seconds, milliseconds) }, _compileFormat: function() { var match, component, components = [], mask = [], str = this.format, propertiesByIndex = {}, i = 0, pos = 0; while (match = formatComponent.exec(str)) { component = match[0]; if (component in dateFormatComponents) { i++; propertiesByIndex[i] = dateFormatComponents[component].property; components.push("\\s*" + dateFormatComponents[component].getPattern(this) + "\\s*"); mask.push({ pattern: new RegExp(dateFormatComponents[component].getPattern(this)), property: dateFormatComponents[component].property, start: pos, end: pos += component.length }) } else { components.push(escapeRegExp(component)); mask.push({ pattern: new RegExp(escapeRegExp(component)), character: component, start: pos, end: ++pos }) } str = str.slice(component.length) } this._mask = mask; this._maskPos = 0; this._formatPattern = new RegExp("^\\s*" + components.join("") + "\\s*$"); this._propertiesByIndex = propertiesByIndex }, _attachDatePickerEvents: function(obj) { var self = this; this.widget.on("click", ".datepicker *", $.proxy(this.click, this)); this.widget.on("click", "[data-action]", $.proxy(this.doAction, this)); this.widget.on("mousedown", $.proxy(this.stopEvent, this)); if (this.pickDate && this.pickTime) { this.widget.on("click.togglePicker", ".accordion-toggle", function(e) { e.stopPropagation(); var $this = $(this); var $parent = $this.closest("ul"); var expanded = $parent.find(".collapse.in"); var closed = $parent.find(".collapse:not(.in)"); if (expanded && expanded.length) { //if() var collapseData = expanded.data("collapse"); if (collapseData && collapseData.transitioning) return; expanded.collapse("hide"); closed.collapse("show"); $this.find("i").toggleClass(self.timeIcon + " " + self.dateIcon); self.$element.find(".add-on i").toggleClass(self.timeIcon + " " + self.dateIcon) if(obj.attr("class").indexOf("bootstrap-datetimepicker-widget-top")>-1) { var timepickflag=expanded.find(".timepicker"); var datepickerObj=obj.find(".datepicker"); var timepickerObj=obj.find(".timepicker"); if(timepickflag.length==0) { var top=parseInt(obj.css("top"))+parseInt(datepickerObj.css("height"))-parseInt(timepickerObj.css("height")); obj.animate({top:top+'px'}); } else { var top=parseInt(obj.css("top"))-(parseInt(datepickerObj.css("height"))-parseInt(timepickerObj.css("height"))); obj.animate({top:top+'px'}); } } } }) } if (this.isInput) { this.$element.on({ focus: $.proxy(this.show, this), change: $.proxy(this.change, this) }); if (this.options.maskInput) { this.$element.on({ keydown: $.proxy(this.keydown, this), keypress: $.proxy(this.keypress, this) }) } } else { this.$element.on({ change: $.proxy(this.change, this) }, "input"); if (this.options.maskInput) { this.$element.on({ keydown: $.proxy(this.keydown, this), keypress: $.proxy(this.keypress, this) }, "input") } if (this.component) { this.component.on("click", $.proxy(this.show, this)) } else { this.$element.on("click", $.proxy(this.show, this)) } } }, _attachDatePickerGlobalEvents: function() { $(window).on("resize.datetimepicker" + this.id, $.proxy(this.place, this)); if (!this.isInput) { $(document).on("mousedown.datetimepicker" + this.id, $.proxy(this.hide, this)) } }, _detachDatePickerEvents: function() { this.widget.off("click", ".datepicker *", this.click); this.widget.off("click", "[data-action]"); this.widget.off("mousedown", this.stopEvent); if (this.pickDate && this.pickTime) { this.widget.off("click.togglePicker") } if (this.isInput) { this.$element.off({ focus: this.show, change: this.change }); if (this.options.maskInput) { this.$element.off({ keydown: this.keydown, keypress: this.keypress }) } } else { this.$element.off({ change: this.change }, "input"); if (this.options.maskInput) { this.$element.off({ keydown: this.keydown, keypress: this.keypress }, "input") } if (this.component) { this.component.off("click", this.show) } else { this.$element.off("click", this.show) } } }, _detachDatePickerGlobalEvents: function() { $(window).off("resize.datetimepicker" + this.id); if (!this.isInput) { $(document).off("mousedown.datetimepicker" + this.id) } }, _isInFixed: function() { if (this.$element) { var parents = this.$element.parents(); var inFixed = false; for (var i = 0; i < parents.length; i++) { if ($(parents[i]).css("position") == "fixed") { inFixed = true; break } } return inFixed } else { return false } } }; $.fn.datetimepicker = function(option, val) { return this.each(function() { var $this = $(this), data = $this.data("datetimepicker"), options = typeof option === "object" && option; if (!data) { $this.data("datetimepicker", data = new DateTimePicker(this, $.extend({}, $.fn.datetimepicker.defaults, options))) } if (typeof option === "string") data[option](val) }) }; $.fn.datetimepicker.defaults = { maskInput: false, pickDate: true, pickTime: true, pick12HourFormat: false, pickSeconds: true, startDate: -Infinity, endDate: Infinity, collapse: true }; $.fn.datetimepicker.Constructor = DateTimePicker; var dpgId = 0; var dates = $.fn.datetimepicker.dates = { en: { days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"], months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] } }; var dateFormatComponents = { dd: { property: "UTCDate", getPattern: function() { return "(0?[1-9]|[1-2][0-9]|3[0-1])\\b" } }, MM: { property: "UTCMonth", getPattern: function() { return "(0?[1-9]|1[0-2])\\b" } }, yy: { property: "UTCYear", getPattern: function() { return "(\\d{2})\\b" } }, yyyy: { property: "UTCFullYear", getPattern: function() { return "(\\d{4})\\b" } }, hh: { property: "UTCHours", getPattern: function() { return "(0?[0-9]|1[0-9]|2[0-3])\\b" } }, mm: { property: "UTCMinutes", getPattern: function() { return "(0?[0-9]|[1-5][0-9])\\b" } }, ss: { property: "UTCSeconds", getPattern: function() { return "(0?[0-9]|[1-5][0-9])\\b" } }, ms: { property: "UTCMilliseconds", getPattern: function() { return "([0-9]{1,3})\\b" } }, HH: { property: "Hours12", getPattern: function() { return "(0?[1-9]|1[0-2])\\b" } }, PP: { property: "Period12", getPattern: function() { return "(AM|PM|am|pm|Am|aM|Pm|pM)\\b" } } }; var keys = []; for (var k in dateFormatComponents) keys.push(k); keys[keys.length - 1] += "\\b"; keys.push("."); var formatComponent = new RegExp(keys.join("\\b|")); keys.pop(); var formatReplacer = new RegExp(keys.join("\\b|"), "g"); function escapeRegExp(str) { return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&") } function padLeft(s, l, c) { if (l < s.length) return s; else return Array(l - s.length + 1).join(c || " ") + s } function getTemplate(timeIcon, pickDate, pickTime, is12Hours, showSeconds, collapse) { if (pickDate && pickTime) { return '<div class="bootstrap-datetimepicker-widget dropdown-menu"><div class="temp-display-datetime" id="temp-display-datetime"><span></span></div>' + "<ul>" + "<li" + (collapse ? ' class="collapse in"' : "") + ">" + '<div class="datepicker">' + DPGlobal.template + "</div>" + "</li>" + '<li class="picker-switch accordion-toggle"><a><i class="' + timeIcon + '"></i></a></li>' + "<li" + (collapse ? ' class="collapse"' : "") + ">" + '<div class="timepicker">' + TPGlobal.getTemplate(is12Hours, showSeconds) + "</div>" + "</li>" + "</ul>" + "</div>" } else if (pickTime) { return '<div class="bootstrap-datetimepicker-widget dropdown-menu">' + '<div class="timepicker">' + TPGlobal.getTemplate(is12Hours, showSeconds) + "</div>" + "</div>" } else { return '<div class="bootstrap-datetimepicker-widget dropdown-menu">' + '<div class="datepicker">' + DPGlobal.template + "</div>" + "</div>" } } function UTCDate() { return new Date(Date.UTC.apply(Date, arguments)) } var DPGlobal = { modes: [{ clsName: "days", navFnc: "UTCMonth", navStep: 1 }, { clsName: "months", navFnc: "UTCFullYear", navStep: 1 }, { clsName: "years", navFnc: "UTCFullYear", navStep: 10 }], isLeapYear: function(year) { return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0 }, getDaysInMonth: function(year, month) { return [31, DPGlobal.isLeapYear(year) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month] }, headTemplate: "<thead>" + "<tr>" + '<th class="prev">?</th>' + '<th colspan="5" class="switch"></th>' + '<th class="next">?</th>' + "</tr>" + "</thead>", contTemplate: '<tbody><tr><td colspan="7"></td></tr></tbody>' }; DPGlobal.template = '<div class="datepicker-days">' + '<table class="table-condensed">' + DPGlobal.headTemplate + "<tbody></tbody>" + "</table>" + "</div>" + '<div class="datepicker-months">' + '<table class="table-condensed">' + DPGlobal.headTemplate + DPGlobal.contTemplate + "</table>" + "</div>" + '<div class="datepicker-years">' + '<table class="table-condensed">' + DPGlobal.headTemplate + DPGlobal.contTemplate + "</table>" + "</div>"; var TPGlobal = { hourTemplate: '<span data-action="showHours" data-time-component="hours" class="timepicker-hour"></span>', minuteTemplate: '<span data-action="showMinutes" data-time-component="minutes" class="timepicker-minute"></span>', secondTemplate: '<span data-action="showSeconds" data-time-component="seconds" class="timepicker-second"></span>' }; TPGlobal.getTemplate = function(is12Hours, showSeconds) { return '<div class="timepicker-picker">' + '<table class="table-condensed"' + (is12Hours ? ' data-hour-format="12"' : "") + ">" + "<tr>" + '<td><a href="#" class="btn" data-action="incrementHours"><i class="icon-chevron-up"></i></a></td>' + '<td class="separator"></td>' + '<td><a href="#" class="btn" data-action="incrementMinutes"><i class="icon-chevron-up"></i></a></td>' + (showSeconds ? '<td class="separator"></td>' + '<td><a href="#" class="btn" data-action="incrementSeconds"><i class="icon-chevron-up"></i></a></td>' : "") + (is12Hours ? '<td class="separator"></td>' : "") + "</tr>" + "<tr>" + "<td>" + TPGlobal.hourTemplate + "</td> " + '<td class="separator">:</td>' + "<td>" + TPGlobal.minuteTemplate + "</td> " + (showSeconds ? '<td class="separator">:</td>' + "<td>" + TPGlobal.secondTemplate + "</td>" : "") + (is12Hours ? '<td class="separator"></td>' + "<td>" + '<button type="button" class="btn btn-primary" data-action="togglePeriod"></button>' + "</td>" : "") + "</tr>" + "<tr>" + '<td><a href="#" class="btn" data-action="decrementHours"><i class="icon-chevron-down"></i></a></td>' + '<td class="separator"></td>' + '<td><a href="#" class="btn" data-action="decrementMinutes"><i class="icon-chevron-down"></i></a></td>' + (showSeconds ? '<td class="separator"></td>' + '<td><a href="#" class="btn" data-action="decrementSeconds"><i class="icon-chevron-down"></i></a></td>' : "") + (is12Hours ? '<td class="separator"></td>' : "") + "</tr>" + "</table>" + "</div>" + '<div class="timepicker-hours" data-action="selectHour">' + '<table class="table-condensed">' + "</table>" + "</div>" + '<div class="timepicker-minutes" data-action="selectMinute">' + '<table class="table-condensed">' + "</table>" + "</div>" + (showSeconds ? '<div class="timepicker-seconds" data-action="selectSecond">' + '<table class="table-condensed">' + "</table>" + "</div>" : "") } })(window.jQuery);
/*! * Datepicker for Bootstrap * * Copyright 2012 Stefan Petre * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * */ .clearfix { *zoom: 1 } .clearfix:before, .clearfix:after { display: table; content: ""; line-height: 0 } .clearfix:after { clear: both } .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0 } .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .bootstrap-datetimepicker-widget { top: 0; left: 0; width: 250px; padding: 4px; margin-top: 1px; z-index: 3000; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget:before { content: ''; display: inline-block; border-left: 7px solid transparent; border-right: 7px solid transparent; border-bottom: 7px solid #ccc; border-bottom-color: rgba(0, 0, 0, 0.2); position: absolute; top: -7px; left: 6px } .bootstrap-datetimepicker-widget:after { content: ''; display: inline-block; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 6px solid #fff; position: absolute; top: -6px; left: 7px } .bootstrap-datetimepicker-widget.pull-right:before { left: auto; right: 6px } .bootstrap-datetimepicker-widget.pull-right:after { left: auto; right: 7px } .bootstrap-datetimepicker-widget>ul { list-style-type: none; margin: 0 } .bootstrap-datetimepicker-widget .timepicker-hour, .bootstrap-datetimepicker-widget .timepicker-minute, .bootstrap-datetimepicker-widget .timepicker-second { width: 100%; font-weight: bold; font-size: 1.2em } .bootstrap-datetimepicker-widget table[data-hour-format="12"] .separator { width: 4px; padding: 0; margin: 0 } .bootstrap-datetimepicker-widget .datepicker>div { display: none } .bootstrap-datetimepicker-widget .picker-switch { text-align: center } .bootstrap-datetimepicker-widget table { width: 100%; margin: 0 } .bootstrap-datetimepicker-widget td, .bootstrap-datetimepicker-widget th { text-align: center; width: 20px; height: 20px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget td.day:hover, .bootstrap-datetimepicker-widget td.hour:hover, .bootstrap-datetimepicker-widget td.minute:hover, .bootstrap-datetimepicker-widget td.second:hover { background: #eee; cursor: pointer } .bootstrap-datetimepicker-widget td.old, .bootstrap-datetimepicker-widget td.new { color: #999 } .bootstrap-datetimepicker-widget td.active, .bootstrap-datetimepicker-widget td.active:hover { color: #fff; background-color: #006dcc; background-image: -moz-linear-gradient(top, #08c, #04c); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c)); background-image: -webkit-linear-gradient(top, #08c, #04c); background-image: -o-linear-gradient(top, #08c, #04c); background-image: linear-gradient(to bottom, #08c, #04c); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); border-color: #04c #04c #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #04c; filter: progid: DXImageTransform.Microsoft.gradient(enabled false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) } .bootstrap-datetimepicker-widget td.active:hover, .bootstrap-datetimepicker-widget td.active:hover:hover, .bootstrap-datetimepicker-widget td.active:active, .bootstrap-datetimepicker-widget td.active:hover:active, .bootstrap-datetimepicker-widget td.active.active, .bootstrap-datetimepicker-widget td.active:hover.active, .bootstrap-datetimepicker-widget td.active.disabled, .bootstrap-datetimepicker-widget td.active:hover.disabled, .bootstrap-datetimepicker-widget td.active[disabled], .bootstrap-datetimepicker-widget td.active:hover[disabled] { color: #fff; background-color: #04c; *background-color: #003bb3 } .bootstrap-datetimepicker-widget td.active:active, .bootstrap-datetimepicker-widget td.active:hover:active, .bootstrap-datetimepicker-widget td.active.active, .bootstrap-datetimepicker-widget td.active:hover.active { background-color: #039 \9 } .bootstrap-datetimepicker-widget td.disabled, .bootstrap-datetimepicker-widget td.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget td span { display: block; width: 47px; height: 54px; line-height: 54px; float: left; margin: 2px; cursor: pointer; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget td span:hover { background: #eee } .bootstrap-datetimepicker-widget td span.active { color: #fff; background-color: #006dcc; background-image: -moz-linear-gradient(top, #08c, #04c); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c)); background-image: -webkit-linear-gradient(top, #08c, #04c); background-image: -o-linear-gradient(top, #08c, #04c); background-image: linear-gradient(to bottom, #08c, #04c); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); border-color: #04c #04c #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #04c; filter: progid: DXImageTransform.Microsoft.gradient(enabled false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) } .bootstrap-datetimepicker-widget td span.active:hover, .bootstrap-datetimepicker-widget td span.active:active, .bootstrap-datetimepicker-widget td span.active.active, .bootstrap-datetimepicker-widget td span.active.disabled, .bootstrap-datetimepicker-widget td span.active[disabled] { color: #fff; background-color: #04c; *background-color: #003bb3 } .bootstrap-datetimepicker-widget td span.active:active, .bootstrap-datetimepicker-widget td span.active.active { background-color: #039 \9 } .bootstrap-datetimepicker-widget td span.old { color: #999 } .bootstrap-datetimepicker-widget td span.disabled, .bootstrap-datetimepicker-widget td span.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget th.switch { width: 145px } .bootstrap-datetimepicker-widget th.next, .bootstrap-datetimepicker-widget th.prev { font-size: 21px } .bootstrap-datetimepicker-widget th.disabled, .bootstrap-datetimepicker-widget th.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget thead tr:first-child th { cursor: pointer } .bootstrap-datetimepicker-widget thead tr:first-child th:hover { background: #eee } .input-append.date .add-on i, .input-prepend.date .add-on i { display: block; cursor: pointer; width: 16px; height: 16px } .bootstrap-datetimepicker-widget.left-oriented:before { left: auto; right: 6px } .bootstrap-datetimepicker-widget.left-oriented:after { left: auto; right: 7px } .bootstrap-datetimepicker-widget-top { top: 0; left: 0; width: 250px; padding: 4px; margin-top: 1px; z-index: 3000; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget-top:after { content: ''; display: inline-block; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 6px solid #fff; position: absolute; bottom: -6px; left: 7px; } .bootstrap-datetimepicker-widget-top:before { content: ''; display: inline-block; border-left: 7px solid transparent; border-right: 7px solid transparent; border-top: 7px solid #ccc; border-bottom-color: rgba(0, 0, 0, 0.2); position: absolute; bottom: -7px; left: 6px; } .bootstrap-datetimepicker-widget-top.pull-right:before { left: auto; right: 6px } .bootstrap-datetimepicker-widget-top.pull-right:after { left: auto; right: 7px } .bootstrap-datetimepicker-widget-top>ul { list-style-type: none; margin: 0 } .bootstrap-datetimepicker-widget-top .timepicker-hour, .bootstrap-datetimepicker-widget-top .timepicker-minute, .bootstrap-datetimepicker-widget-top .timepicker-second { width: 100%; font-weight: bold; font-size: 1.2em } .bootstrap-datetimepicker-widget-top table[data-hour-format="12"] .separator { width: 4px; padding: 0; margin: 0 } .bootstrap-datetimepicker-widget-top .datepicker>div { display: none } .bootstrap-datetimepicker-widget-top .picker-switch { text-align: center } .bootstrap-datetimepicker-widget-top table { width: 100%; margin: 0 } .bootstrap-datetimepicker-widget-top td, .bootstrap-datetimepicker-widget-top th { text-align: center; width: 20px; height: 20px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget-top td.day:hover, .bootstrap-datetimepicker-widget-top td.hour:hover, .bootstrap-datetimepicker-widget-top td.minute:hover, .bootstrap-datetimepicker-widget-top td.second:hover { background: #eee; cursor: pointer } .bootstrap-datetimepicker-widget-top td.old, .bootstrap-datetimepicker-widget-top td.new { color: #999 } .bootstrap-datetimepicker-widget-top td.active, .bootstrap-datetimepicker-widget-top td.active:hover { color: #fff; background-color: #006dcc; background-image: -moz-linear-gradient(top, #08c, #04c); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c)); background-image: -webkit-linear-gradient(top, #08c, #04c); background-image: -o-linear-gradient(top, #08c, #04c); background-image: linear-gradient(to bottom, #08c, #04c); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); border-color: #04c #04c #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #04c; filter: progid: DXImageTransform.Microsoft.gradient(enabled false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) } .bootstrap-datetimepicker-widget-top td.active:hover, .bootstrap-datetimepicker-widget-top td.active:hover:hover, .bootstrap-datetimepicker-widget-top td.active:active, .bootstrap-datetimepicker-widget-top td.active:hover:active, .bootstrap-datetimepicker-widget-top td.active.active, .bootstrap-datetimepicker-widget-top td.active:hover.active, .bootstrap-datetimepicker-widget-top td.active.disabled, .bootstrap-datetimepicker-widget-top td.active:hover.disabled, .bootstrap-datetimepicker-widget-top td.active[disabled], .bootstrap-datetimepicker-widget-top td.active:hover[disabled] { color: #fff; background-color: #04c; *background-color: #003bb3 } .bootstrap-datetimepicker-widget-top td.active:active, .bootstrap-datetimepicker-widget-top td.active:hover:active, .bootstrap-datetimepicker-widget-top td.active.active, .bootstrap-datetimepicker-widget-top td.active:hover.active { background-color: #039 \9 } .bootstrap-datetimepicker-widget-top td.disabled, .bootstrap-datetimepicker-widget-top td.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget-top td span { display: block; width: 47px; height: 54px; line-height: 54px; float: left; margin: 2px; cursor: pointer; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .bootstrap-datetimepicker-widget-top td span:hover { background: #eee } .bootstrap-datetimepicker-widget-top td span.active { color: #fff; background-color: #006dcc; background-image: -moz-linear-gradient(top, #08c, #04c); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c)); background-image: -webkit-linear-gradient(top, #08c, #04c); background-image: -o-linear-gradient(top, #08c, #04c); background-image: linear-gradient(to bottom, #08c, #04c); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); border-color: #04c #04c #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #04c; filter: progid: DXImageTransform.Microsoft.gradient(enabled false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) } .bootstrap-datetimepicker-widget-top td span.active:hover, .bootstrap-datetimepicker-widget-top td span.active:active, .bootstrap-datetimepicker-widget-top td span.active.active, .bootstrap-datetimepicker-widget-top td span.active.disabled, .bootstrap-datetimepicker-widget-top td span.active[disabled] { color: #fff; background-color: #04c; *background-color: #003bb3 } .bootstrap-datetimepicker-widget-top td span.active:active, .bootstrap-datetimepicker-widget-top td span.active.active { background-color: #039 \9 } .bootstrap-datetimepicker-widget-top td span.old { color: #999 } .bootstrap-datetimepicker-widget-top td span.disabled, .bootstrap-datetimepicker-widget-top td span.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget-top th.switch { width: 145px } .bootstrap-datetimepicker-widget-top th.next, .bootstrap-datetimepicker-widget-top th.prev { font-size: 21px } .bootstrap-datetimepicker-widget-top th.disabled, .bootstrap-datetimepicker-widget-top th.disabled:hover { background: 0; color: #999; cursor: not-allowed } .bootstrap-datetimepicker-widget-top thead tr:first-child th { cursor: pointer } .bootstrap-datetimepicker-widget-top thead tr:first-child th:hover { background: #eee } .bootstrap-datetimepicker-widget-top.left-oriented:before { left: auto; right: 6px } .bootstrap-datetimepicker-widget-top.left-oriented:after { left: auto; right: 7px } .bootstrap-datetimepicker-widget-top .temp-display-datetime{ text-align: center; background-color:black; border-radius: 5px; /*min-height:20px;*/ } .bootstrap-datetimepicker-widget-top .temp-display-datetime span{ color:white; } .table-condensed th, .table-condensed td { padding:0px; } .bootstrap-datetimepicker-widget-top{ font-size:80%; color:#B8B6FA; background-color:gray; } .bootstrap-datetimepicker-widget-top:after{ border-top: 6px solid gray; } .bootstrap-datetimepicker-widget-top:before{ border-top:gray; }
<!DOCTYPE HTML> <html> <head> <link href="bootstrap-combined.css" rel="stylesheet"> <link rel="stylesheet" type="text/css" media="screen" href="bootstrap-datetimepicker.css"> <style> #datetimepicker{ position:relative; top:300px; } </style> </head> <body> <div id="datetimepicker" class="input-append date"> <input type="text" style="display:none"></input> <span class="add-on"> <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i> </span> </div> <script type="text/javascript" src="jquery-2.0.0.js"> </script> <script type="text/javascript" src="bootstrap.js"> </script> <script type="text/javascript" src="bootstrap-datetimepicker.js"> </script> <script type="text/javascript"> /*****yilei change********/ /******orientation the 'top' option is new one*********/ /******add the new option in bootstrap-dateimepicker.js---place:XXXXX*********/ /******add the new style in bootstrap-dateimepicker.css---place:XXXXX*********/ $('#datetimepicker').datetimepicker({ format: 'MM/dd/yyyy hh:mm:ss', language: 'en', pickDate: true, pickTime: true, hourStep: 1, minuteStep: 15, secondStep: 30, orientation: "top", width:"100px" }); $('#datetimepicker').on("hide",function(d){console.dir($(d.target).find("input").val());}) </script> </body> <html>
bootstrap-combined.css
<pre name="code" class="css">/*! * Bootstrap v2.2.2 * * Copyright 2012 Twitter, Inc * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world @twitter by @mdo and @fat. */ article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block } audio, canvas, video { display: inline-block; *display: inline; *zoom: 1 } audio:not([controls]) { display: none } html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100% } a:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px } a:hover, a:active { outline: 0 } sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline } sup { top: -0.5em } sub { bottom: -0.25em } img { width: auto\9; height: auto; /*max-width:100%;*/ vertical-align: middle; border: 0; -ms-interpolation-mode: bicubic } #map_canvas img, .google-maps img { max-width: none } button, input, select, textarea { margin: 0; font-size: 100%; vertical-align: middle } button, input { *overflow: visible; line-height: normal } button::-moz-focus-inner, input::-moz-focus-inner { padding: 0; border: 0 } button, html input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button } label, select, button, input[type="button"], input[type="reset"], input[type="submit"], input[type="radio"], input[type="checkbox"] { cursor: pointer } input[type="search"] { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; -webkit-appearance: textfield } input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none } textarea { overflow: auto; vertical-align: top } @media print { * { color: #000!important; text-shadow: none!important; background: transparent!important; box-shadow: none!important } a, a:visited { text-decoration: underline } a[href]:after { content: " (" attr(href) ")" } abbr[title]:after { content: " (" attr(title) ")" } .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: "" } pre, blockquote { border: 1px solid #999; page-break-inside: avoid } thead { display: table-header-group } tr, img { page-break-inside: avoid } img { max-width: 100%!important } @page { margin: .5cm } p, h2, h3 { orphans: 3; widows: 3 } h2, h3 { page-break-after: avoid } } .clearfix { *zoom: 1 } .clearfix:before, .clearfix:after { display: table; line-height: 0; content: "" } .clearfix:after { clear: both } .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0 } .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } body { margin: 0; /*font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff*/ } a { color: #08c; text-decoration: none } a:hover { color: #005580; text-decoration: underline } .img-rounded { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px } .img-polaroid { padding: 4px; background-color: #fff; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) } .img-circle { -webkit-border-radius: 500px; -moz-border-radius: 500px; border-radius: 500px } .row { margin-left: -20px; *zoom: 1 } .row:before, .row:after { display: table; line-height: 0; content: "" } .row:after { clear: both } [class*="span"] { float: left; min-height: 1px; margin-left: 20px } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 940px } .span12 { width: 940px } .span11 { width: 860px } .span10 { width: 780px } .span9 { width: 700px } .span8 { width: 620px } .span7 { width: 540px } .span6 { width: 460px } .span5 { width: 380px } .span4 { width: 300px } .span3 { width: 220px } .span2 { width: 140px } .span1 { width: 60px } .offset12 { margin-left: 980px } .offset11 { margin-left: 900px } .offset10 { margin-left: 820px } .offset9 { margin-left: 740px } .offset8 { margin-left: 660px } .offset7 { margin-left: 580px } .offset6 { margin-left: 500px } .offset5 { margin-left: 420px } .offset4 { margin-left: 340px } .offset3 { margin-left: 260px } .offset2 { margin-left: 180px } .offset1 { margin-left: 100px } .row-fluid { width: 100%; *zoom: 1 } .row-fluid:before, .row-fluid:after { display: table; line-height: 0; content: "" } .row-fluid:after { clear: both } .row-fluid [class*="span"] { display: block; float: left; width: 100%; min-height: 30px; margin-left: 2.127659574468085%; *margin-left: 2.074468085106383%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .row-fluid [class*="span"]:first-child { margin-left: 0 } .row-fluid .controls-row [class*="span"]+[class*="span"] { margin-left: 2.127659574468085% } .row-fluid .span12 { width: 100%; *width: 99.94680851063829% } .row-fluid .span11 { width: 91.48936170212765%; *width: 91.43617021276594% } .row-fluid .span10 { width: 82.97872340425532%; *width: 82.92553191489361% } .row-fluid .span9 { width: 74.46808510638297%; *width: 74.41489361702126% } .row-fluid .span8 { width: 65.95744680851064%; *width: 65.90425531914893% } .row-fluid .span7 { width: 57.44680851063829%; *width: 57.39361702127659% } .row-fluid .span6 { width: 48.93617021276595%; *width: 48.88297872340425% } .row-fluid .span5 { width: 40.42553191489362%; *width: 40.37234042553192% } .row-fluid .span4 { width: 31.914893617021278%; *width: 31.861702127659576% } .row-fluid .span3 { width: 23.404255319148934%; *width: 23.351063829787233% } .row-fluid .span2 { width: 14.893617021276595%; *width: 14.840425531914894% } .row-fluid .span1 { width: 6.382978723404255%; *width: 6.329787234042553% } .row-fluid .offset12 { margin-left: 104.25531914893617%; *margin-left: 104.14893617021275% } .row-fluid .offset12:first-child { margin-left: 102.12765957446808%; *margin-left: 102.02127659574467% } .row-fluid .offset11 { margin-left: 95.74468085106382%; *margin-left: 95.6382978723404% } .row-fluid .offset11:first-child { margin-left: 93.61702127659574%; *margin-left: 93.51063829787232% } .row-fluid .offset10 { margin-left: 87.23404255319149%; *margin-left: 87.12765957446807% } .row-fluid .offset10:first-child { margin-left: 85.1063829787234%; *margin-left: 84.99999999999999% } .row-fluid .offset9 { margin-left: 78.72340425531914%; *margin-left: 78.61702127659572% } .row-fluid .offset9:first-child { margin-left: 76.59574468085106%; *margin-left: 76.48936170212764% } .row-fluid .offset8 { margin-left: 70.2127659574468%; *margin-left: 70.10638297872339% } .row-fluid .offset8:first-child { margin-left: 68.08510638297872%; *margin-left: 67.9787234042553% } .row-fluid .offset7 { margin-left: 61.70212765957446%; *margin-left: 61.59574468085106% } .row-fluid .offset7:first-child { margin-left: 59.574468085106375%; *margin-left: 59.46808510638297% } .row-fluid .offset6 { margin-left: 53.191489361702125%; *margin-left: 53.085106382978715% } .row-fluid .offset6:first-child { margin-left: 51.063829787234035%; *margin-left: 50.95744680851063% } .row-fluid .offset5 { margin-left: 44.68085106382979%; *margin-left: 44.57446808510638% } .row-fluid .offset5:first-child { margin-left: 42.5531914893617%; *margin-left: 42.4468085106383% } .row-fluid .offset4 { margin-left: 36.170212765957444%; *margin-left: 36.06382978723405% } .row-fluid .offset4:first-child { margin-left: 34.04255319148936%; *margin-left: 33.93617021276596% } .row-fluid .offset3 { margin-left: 27.659574468085104%; *margin-left: 27.5531914893617% } .row-fluid .offset3:first-child { margin-left: 25.53191489361702%; *margin-left: 25.425531914893618% } .row-fluid .offset2 { margin-left: 19.148936170212764%; *margin-left: 19.04255319148936% } .row-fluid .offset2:first-child { margin-left: 17.02127659574468%; *margin-left: 16.914893617021278% } .row-fluid .offset1 { margin-left: 10.638297872340425%; *margin-left: 10.53191489361702% } .row-fluid .offset1:first-child { margin-left: 8.51063829787234%; *margin-left: 8.404255319148938% } [class*="span"].hide, .row-fluid [class*="span"].hide { display: none } [class*="span"].pull-right, .row-fluid [class*="span"].pull-right { float: right } .container { margin-right: auto; margin-left: auto; *zoom: 1 } .container:before, .container:after { display: table; line-height: 0; content: "" } .container:after { clear: both } .container-fluid { padding-right: 20px; padding-left: 20px; *zoom: 1 } .container-fluid:before, .container-fluid:after { display: table; line-height: 0; content: "" } .container-fluid:after { clear: both } p { margin: 0 0 10px } .lead { margin-bottom: 20px; font-size: 21px; font-weight: 200; line-height: 30px } small { font-size: 85% } strong { font-weight: bold } em { font-style: italic } cite { font-style: normal } .muted { color: #999 } a.muted:hover { color: #808080 } .text-warning { color: #c09853 } a.text-warning:hover { color: #a47e3c } .text-error { color: #b94a48 } a.text-error:hover { color: #953b39 } .text-info { color: #3a87ad } a.text-info:hover { color: #2d6987 } .text-success { color: #468847 } a.text-success:hover { color: #356635 } h1, h2, h3, h4, h5, h6 { margin: 10px 0; font-family: inherit; font-weight: bold; line-height: 20px; color: inherit; text-rendering: optimizelegibility } h1 small, h2 small, h3 small, h4 small, h5 small, h6 small { font-weight: normal; line-height: 1; color: #999 } h1, h2, h3 { line-height: 40px } h1 { font-size: 38.5px } h2 { font-size: 31.5px } h3 { font-size: 24.5px } h4 { font-size: 17.5px } h5 { font-size: 14px } h6 { font-size: 11.9px } h1 small { font-size: 24.5px } h2 small { font-size: 17.5px } h3 small { font-size: 14px } h4 small { font-size: 14px } .page-header { padding-bottom: 9px; margin: 20px 0 30px; border-bottom: 1px solid #eee } ul, ol { padding: 0; margin: 0 0 10px 25px } ul ul, ul ol, ol ol, ol ul { margin-bottom: 0 } li { line-height: 20px } ul.unstyled, ol.unstyled { margin-left: 0; list-style: none } ul.inline, ol.inline { margin-left: 0; list-style: none } ul.inline>li, ol.inline>li { display: inline-block; padding-right: 5px; padding-left: 5px } dl { margin-bottom: 20px } dt, dd { line-height: 20px } dt { font-weight: bold } dd { margin-left: 10px } .dl-horizontal { *zoom: 1 } .dl-horizontal:before, .dl-horizontal:after { display: table; line-height: 0; content: "" } .dl-horizontal:after { clear: both } .dl-horizontal dt { float: left; width: 160px; overflow: hidden; clear: left; text-align: right; text-overflow: ellipsis; white-space: nowrap } .dl-horizontal dd { margin-left: 180px } hr { margin: 20px 0; border: 0; border-top: 1px solid #eee; border-bottom: 1px solid #fff } abbr[title], abbr[data-original-title] { cursor: help; border-bottom: 1px dotted #999 } abbr.initialism { font-size: 90%; text-transform: uppercase } blockquote { padding: 0 0 0 15px; margin: 0 0 20px; border-left: 5px solid #eee } blockquote p { margin-bottom: 0; font-size: 16px; font-weight: 300; line-height: 25px } blockquote small { display: block; line-height: 20px; color: #999 } blockquote small:before { content: '\2014 \00A0' } blockquote.pull-right { float: right; padding-right: 15px; padding-left: 0; border-right: 5px solid #eee; border-left: 0 } blockquote.pull-right p, blockquote.pull-right small { text-align: right } blockquote.pull-right small:before { content: '' } blockquote.pull-right small:after { content: '\00A0 \2014' } q:before, q:after, blockquote:before, blockquote:after { content: "" } address { display: block; margin-bottom: 20px; font-style: normal; line-height: 20px } code, pre { padding: 0 3px 2px; font-family: Monaco, Menlo, Consolas, "Courier New", monospace; font-size: 12px; color: #333; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } code { padding: 2px 4px; color: #d14; white-space: nowrap; background-color: #f7f7f9; border: 1px solid #e1e1e8 } pre { display: block; padding: 9.5px; margin: 0 0 10px; font-size: 13px; line-height: 20px; word-break: break-all; word-wrap: break-word; white-space: pre; white-space: pre-wrap; background-color: #f5f5f5; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.15); -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } pre.prettyprint { margin-bottom: 20px } pre code { padding: 0; color: inherit; white-space: pre; white-space: pre-wrap; background-color: transparent; border: 0 } .pre-scrollable { max-height: 340px; overflow-y: scroll } form { margin: 0 0 20px } fieldset { padding: 0; margin: 0; border: 0 } legend { display: block; width: 100%; padding: 0; margin-bottom: 20px; font-size: 21px; line-height: 40px; color: #333; border: 0; border-bottom: 1px solid #e5e5e5 } legend small { font-size: 15px; color: #999 } label, input, button, select, textarea { font-size: 14px; font-weight: normal; line-height: 20px } input, button, select, textarea { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif } label { display: block; margin-bottom: 5px } select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input { display: inline-block; height: 20px; padding: 4px 6px; margin-bottom: 10px; font-size: 14px; line-height: 20px; color: #555; vertical-align: middle; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } input, textarea, .uneditable-input { width: 206px } textarea { height: auto } textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input { background-color: #fff; border: 1px solid #ccc; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -webkit-transition: border linear .2s, box-shadow linear .2s; -moz-transition: border linear .2s, box-shadow linear .2s; -o-transition: border linear .2s, box-shadow linear .2s; transition: border linear .2s, box-shadow linear .2s } textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable-input:focus { border-color: rgba(82, 168, 236, 0.8); outline: 0; outline: thin dotted \9; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6) } input[type="radio"], input[type="checkbox"] { margin: 4px 0 0; margin-top: 1px \9; *margin-top: 0; line-height: normal } input[type="file"], input[type="image"], input[type="submit"], input[type="reset"], input[type="button"], input[type="radio"], input[type="checkbox"] { width: auto } select, input[type="file"] { height: 30px; *margin-top: 4px; line-height: 30px } select { width: 220px; background-color: #fff; border: 1px solid #ccc } select[multiple], select[size] { height: auto } select:focus, input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px } .uneditable-input, .uneditable-textarea { color: #999; cursor: not-allowed; background-color: #fcfcfc; border-color: #ccc; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025) } .uneditable-input { overflow: hidden; white-space: nowrap } .uneditable-textarea { width: auto; height: auto } input:-moz-placeholder, textarea:-moz-placeholder { color: #999 } input:-ms-input-placeholder, textarea:-ms-input-placeholder { color: #999 } input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #999 } .radio, .checkbox { min-height: 20px; padding-left: 20px } .radio input[type="radio"], .checkbox input[type="checkbox"] { float: left; margin-left: -20px } .controls>.radio:first-child, .controls>.checkbox:first-child { padding-top: 5px } .radio.inline, .checkbox.inline { display: inline-block; padding-top: 5px; margin-bottom: 0; vertical-align: middle } .radio.inline+.radio.inline, .checkbox.inline+.checkbox.inline { margin-left: 10px } .input-mini { width: 60px } .input-small { width: 90px } .input-medium { width: 150px } .input-large { width: 210px } .input-xlarge { width: 270px } .input-xxlarge { width: 530px } input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input[class*="span"], .row-fluid input[class*="span"], .row-fluid select[class*="span"], .row-fluid textarea[class*="span"], .row-fluid .uneditable-input[class*="span"] { float: none; margin-left: 0 } .input-append input[class*="span"], .input-append .uneditable-input[class*="span"], .input-prepend input[class*="span"], .input-prepend .uneditable-input[class*="span"], .row-fluid input[class*="span"], .row-fluid select[class*="span"], .row-fluid textarea[class*="span"], .row-fluid .uneditable-input[class*="span"], .row-fluid .input-prepend [class*="span"], .row-fluid .input-append [class*="span"] { display: inline-block } input, textarea, .uneditable-input { margin-left: 0 } .controls-row [class*="span"]+[class*="span"] { margin-left: 20px } input.span12, textarea.span12, .uneditable-input.span12 { width: 926px } input.span11, textarea.span11, .uneditable-input.span11 { width: 846px } input.span10, textarea.span10, .uneditable-input.span10 { width: 766px } input.span9, textarea.span9, .uneditable-input.span9 { width: 686px } input.span8, textarea.span8, .uneditable-input.span8 { width: 606px } input.span7, textarea.span7, .uneditable-input.span7 { width: 526px } input.span6, textarea.span6, .uneditable-input.span6 { width: 446px } input.span5, textarea.span5, .uneditable-input.span5 { width: 366px } input.span4, textarea.span4, .uneditable-input.span4 { width: 286px } input.span3, textarea.span3, .uneditable-input.span3 { width: 206px } input.span2, textarea.span2, .uneditable-input.span2 { width: 126px } input.span1, textarea.span1, .uneditable-input.span1 { width: 46px } .controls-row { *zoom: 1 } .controls-row:before, .controls-row:after { display: table; line-height: 0; content: "" } .controls-row:after { clear: both } .controls-row [class*="span"], .row-fluid .controls-row [class*="span"] { float: left } .controls-row .checkbox[class*="span"], .controls-row .radio[class*="span"] { padding-top: 5px } input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] { cursor: not-allowed; background-color: #eee } input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"][readonly], input[type="checkbox"][readonly] { background-color: transparent } .control-group.warning .control-label, .control-group.warning .help-block, .control-group.warning .help-inline { color: #c09853 } .control-group.warning .checkbox, .control-group.warning .radio, .control-group.warning input, .control-group.warning select, .control-group.warning textarea { color: #c09853 } .control-group.warning input, .control-group.warning select, .control-group.warning textarea { border-color: #c09853; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) } .control-group.warning input:focus, .control-group.warning select:focus, .control-group.warning textarea:focus { border-color: #a47e3c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e } .control-group.warning .input-prepend .add-on, .control-group.warning .input-append .add-on { color: #c09853; background-color: #fcf8e3; border-color: #c09853 } .control-group.error .control-label, .control-group.error .help-block, .control-group.error .help-inline { color: #b94a48 } .control-group.error .checkbox, .control-group.error .radio, .control-group.error input, .control-group.error select, .control-group.error textarea { color: #b94a48 } .control-group.error input, .control-group.error select, .control-group.error textarea { border-color: #b94a48; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) } .control-group.error input:focus, .control-group.error select:focus, .control-group.error textarea:focus { border-color: #953b39; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392 } .control-group.error .input-prepend .add-on, .control-group.error .input-append .add-on { color: #b94a48; background-color: #f2dede; border-color: #b94a48 } .control-group.success .control-label, .control-group.success .help-block, .control-group.success .help-inline { color: #468847 } .control-group.success .checkbox, .control-group.success .radio, .control-group.success input, .control-group.success select, .control-group.success textarea { color: #468847 } .control-group.success input, .control-group.success select, .control-group.success textarea { border-color: #468847; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) } .control-group.success input:focus, .control-group.success select:focus, .control-group.success textarea:focus { border-color: #356635; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b } .control-group.success .input-prepend .add-on, .control-group.success .input-append .add-on { color: #468847; background-color: #dff0d8; border-color: #468847 } .control-group.info .control-label, .control-group.info .help-block, .control-group.info .help-inline { color: #3a87ad } .control-group.info .checkbox, .control-group.info .radio, .control-group.info input, .control-group.info select, .control-group.info textarea { color: #3a87ad } .control-group.info input, .control-group.info select, .control-group.info textarea { border-color: #3a87ad; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) } .control-group.info input:focus, .control-group.info select:focus, .control-group.info textarea:focus { border-color: #2d6987; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3 } .control-group.info .input-prepend .add-on, .control-group.info .input-append .add-on { color: #3a87ad; background-color: #d9edf7; border-color: #3a87ad } input:focus:invalid, textarea:focus:invalid, select:focus:invalid { color: #b94a48; border-color: #ee5f5b } input:focus:invalid:focus, textarea:focus:invalid:focus, select:focus:invalid:focus { border-color: #e9322d; -webkit-box-shadow: 0 0 6px #f8b9b7; -moz-box-shadow: 0 0 6px #f8b9b7; box-shadow: 0 0 6px #f8b9b7 } .form-actions { padding: 19px 20px 20px; margin-top: 20px; margin-bottom: 20px; background-color: #f5f5f5; border-top: 1px solid #e5e5e5; *zoom: 1 } .form-actions:before, .form-actions:after { display: table; line-height: 0; content: "" } .form-actions:after { clear: both } .help-block, .help-inline { color: #595959 } .help-block { display: block; margin-bottom: 10px } .help-inline { display: inline-block; *display: inline; padding-left: 5px; vertical-align: middle; *zoom: 1 } .input-append, .input-prepend { margin-bottom: 5px; font-size: 0; white-space: nowrap } .input-append input, .input-prepend input, .input-append select, .input-prepend select, .input-append .uneditable-input, .input-prepend .uneditable-input, .input-append .dropdown-menu, .input-prepend .dropdown-menu { font-size: 14px } .input-append input, .input-prepend input, .input-append select, .input-prepend select, .input-append .uneditable-input, .input-prepend .uneditable-input { position: relative; margin-bottom: 0; *margin-left: 0; vertical-align: top; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .input-append input:focus, .input-prepend input:focus, .input-append select:focus, .input-prepend select:focus, .input-append .uneditable-input:focus, .input-prepend .uneditable-input:focus { z-index: 2 } .input-append .add-on, .input-prepend .add-on { display: inline-block; width: auto; height: 20px; min-width: 16px; padding: 4px 5px; font-size: 14px; font-weight: normal; line-height: 20px; text-align: center; text-shadow: 0 1px 0 #fff; background-color: #eee; border: 1px solid #ccc } .input-append .add-on, .input-prepend .add-on, .input-append .btn, .input-prepend .btn, .input-append .btn-group>.dropdown-toggle, .input-prepend .btn-group>.dropdown-toggle { vertical-align: top; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .input-append .active, .input-prepend .active { background-color: #a9dba9; border-color: #46a546 } .input-prepend .add-on, .input-prepend .btn { margin-right: -1px } .input-prepend .add-on:first-child, .input-prepend .btn:first-child { -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px } .input-append input, .input-append select, .input-append .uneditable-input { -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px } .input-append input+.btn-group .btn:last-child, .input-append select+.btn-group .btn:last-child, .input-append .uneditable-input+.btn-group .btn:last-child { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .input-append .add-on, .input-append .btn, .input-append .btn-group { margin-left: -1px } .input-append .add-on:last-child, .input-append .btn:last-child, .input-append .btn-group:last-child>.dropdown-toggle { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .input-prepend.input-append input, .input-prepend.input-append select, .input-prepend.input-append .uneditable-input { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .input-prepend.input-append input+.btn-group .btn, .input-prepend.input-append select+.btn-group .btn, .input-prepend.input-append .uneditable-input+.btn-group .btn { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .input-prepend.input-append .add-on:first-child, .input-prepend.input-append .btn:first-child { margin-right: -1px; -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px } .input-prepend.input-append .add-on:last-child, .input-prepend.input-append .btn:last-child { margin-left: -1px; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .input-prepend.input-append .btn-group:first-child { margin-left: 0 } input.search-query { padding-right: 14px; padding-right: 4px \9; padding-left: 14px; padding-left: 4px \9; margin-bottom: 0; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px } .form-search .input-append .search-query, .form-search .input-prepend .search-query { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .form-search .input-append .search-query { -webkit-border-radius: 14px 0 0 14px; -moz-border-radius: 14px 0 0 14px; border-radius: 14px 0 0 14px } .form-search .input-append .btn { -webkit-border-radius: 0 14px 14px 0; -moz-border-radius: 0 14px 14px 0; border-radius: 0 14px 14px 0 } .form-search .input-prepend .search-query { -webkit-border-radius: 0 14px 14px 0; -moz-border-radius: 0 14px 14px 0; border-radius: 0 14px 14px 0 } .form-search .input-prepend .btn { -webkit-border-radius: 14px 0 0 14px; -moz-border-radius: 14px 0 0 14px; border-radius: 14px 0 0 14px } .form-search input, .form-inline input, .form-horizontal input, .form-search textarea, .form-inline textarea, .form-horizontal textarea, .form-search select, .form-inline select, .form-horizontal select, .form-search .help-inline, .form-inline .help-inline, .form-horizontal .help-inline, .form-search .uneditable-input, .form-inline .uneditable-input, .form-horizontal .uneditable-input, .form-search .input-prepend, .form-inline .input-prepend, .form-horizontal .input-prepend, .form-search .input-append, .form-inline .input-append, .form-horizontal .input-append { display: inline-block; *display: inline; margin-bottom: 0; vertical-align: middle; *zoom: 1 } .form-search .hide, .form-inline .hide, .form-horizontal .hide { display: none } .form-search label, .form-inline label, .form-search .btn-group, .form-inline .btn-group { display: inline-block } .form-search .input-append, .form-inline .input-append, .form-search .input-prepend, .form-inline .input-prepend { margin-bottom: 0 } .form-search .radio, .form-search .checkbox, .form-inline .radio, .form-inline .checkbox { padding-left: 0; margin-bottom: 0; vertical-align: middle } .form-search .radio input[type="radio"], .form-search .checkbox input[type="checkbox"], .form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] { float: left; margin-right: 3px; margin-left: 0 } .control-group { margin-bottom: 10px } legend+.control-group { margin-top: 20px; -webkit-margin-top-collapse: separate } .form-horizontal .control-group { margin-bottom: 20px; *zoom: 1 } .form-horizontal .control-group:before, .form-horizontal .control-group:after { display: table; line-height: 0; content: "" } .form-horizontal .control-group:after { clear: both } .form-horizontal .control-label { float: left; width: 160px; padding-top: 5px; text-align: right } .form-horizontal .controls { *display: inline-block; *padding-left: 20px; margin-left: 180px; *margin-left: 0 } .form-horizontal .controls:first-child { *padding-left: 180px } .form-horizontal .help-block { margin-bottom: 0 } .form-horizontal input+.help-block, .form-horizontal select+.help-block, .form-horizontal textarea+.help-block, .form-horizontal .uneditable-input+.help-block, .form-horizontal .input-prepend+.help-block, .form-horizontal .input-append+.help-block { margin-top: 10px } .form-horizontal .form-actions { padding-left: 180px } table { max-width: 100%; background-color: transparent; border-collapse: collapse; border-spacing: 0 } .table { width: 100%; margin-bottom: 20px } .table th, .table td { padding: 8px; line-height: 20px; text-align: left; vertical-align: top; border-top: 1px solid #ddd } .table th { font-weight: bold } .table thead th { vertical-align: bottom } .table caption+thead tr:first-child th, .table caption+thead tr:first-child td, .table colgroup+thead tr:first-child th, .table colgroup+thead tr:first-child td, .table thead:first-child tr:first-child th, .table thead:first-child tr:first-child td { border-top: 0 } .table tbody+tbody { border-top: 2px solid #ddd } .table .table { background-color: #fff } .table-condensed th, .table-condensed td { padding: 4px 5px } .table-bordered { border: 1px solid #ddd; border-collapse: separate; *border-collapse: collapse; border-left: 0; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .table-bordered th, .table-bordered td { border-left: 1px solid #ddd } .table-bordered caption+thead tr:first-child th, .table-bordered caption+tbody tr:first-child th, .table-bordered caption+tbody tr:first-child td, .table-bordered colgroup+thead tr:first-child th, .table-bordered colgroup+tbody tr:first-child th, .table-bordered colgroup+tbody tr:first-child td, .table-bordered thead:first-child tr:first-child th, .table-bordered tbody:first-child tr:first-child th, .table-bordered tbody:first-child tr:first-child td { border-top: 0 } .table-bordered thead:first-child tr:first-child>th:first-child, .table-bordered tbody:first-child tr:first-child>td:first-child { -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topleft: 4px } .table-bordered thead:first-child tr:first-child>th:last-child, .table-bordered tbody:first-child tr:first-child>td:last-child { -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-topright: 4px } .table-bordered thead:last-child tr:last-child>th:first-child, .table-bordered tbody:last-child tr:last-child>td:first-child, .table-bordered tfoot:last-child tr:last-child>td:first-child { -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px } .table-bordered thead:last-child tr:last-child>th:last-child, .table-bordered tbody:last-child tr:last-child>td:last-child, .table-bordered tfoot:last-child tr:last-child>td:last-child { -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px } .table-bordered tfoot+tbody:last-child tr:last-child td:first-child { -webkit-border-bottom-left-radius: 0; border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0 } .table-bordered tfoot+tbody:last-child tr:last-child td:last-child { -webkit-border-bottom-right-radius: 0; border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0 } .table-bordered caption+thead tr:first-child th:first-child, .table-bordered caption+tbody tr:first-child td:first-child, .table-bordered colgroup+thead tr:first-child th:first-child, .table-bordered colgroup+tbody tr:first-child td:first-child { -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topleft: 4px } .table-bordered caption+thead tr:first-child th:last-child, .table-bordered caption+tbody tr:first-child td:last-child, .table-bordered colgroup+thead tr:first-child th:last-child, .table-bordered colgroup+tbody tr:first-child td:last-child { -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-topright: 4px } .table-striped tbody>tr:nth-child(odd)>td, .table-striped tbody>tr:nth-child(odd)>th { background-color: #f9f9f9 } .table-hover tbody tr:hover td, .table-hover tbody tr:hover th { background-color: #f5f5f5 } table td[class*="span"], table th[class*="span"], .row-fluid table td[class*="span"], .row-fluid table th[class*="span"] { display: table-cell; float: none; margin-left: 0 } .table td.span1, .table th.span1 { float: none; width: 44px; margin-left: 0 } .table td.span2, .table th.span2 { float: none; width: 124px; margin-left: 0 } .table td.span3, .table th.span3 { float: none; width: 204px; margin-left: 0 } .table td.span4, .table th.span4 { float: none; width: 284px; margin-left: 0 } .table td.span5, .table th.span5 { float: none; width: 364px; margin-left: 0 } .table td.span6, .table th.span6 { float: none; width: 444px; margin-left: 0 } .table td.span7, .table th.span7 { float: none; width: 524px; margin-left: 0 } .table td.span8, .table th.span8 { float: none; width: 604px; margin-left: 0 } .table td.span9, .table th.span9 { float: none; width: 684px; margin-left: 0 } .table td.span10, .table th.span10 { float: none; width: 764px; margin-left: 0 } .table td.span11, .table th.span11 { float: none; width: 844px; margin-left: 0 } .table td.span12, .table th.span12 { float: none; width: 924px; margin-left: 0 } .table tbody tr.success td { background-color: #dff0d8 } .table tbody tr.error td { background-color: #f2dede } .table tbody tr.warning td { background-color: #fcf8e3 } .table tbody tr.info td { background-color: #d9edf7 } .table-hover tbody tr.success:hover td { background-color: #d0e9c6 } .table-hover tbody tr.error:hover td { background-color: #ebcccc } .table-hover tbody tr.warning:hover td { background-color: #faf2cc } .table-hover tbody tr.info:hover td { background-color: #c4e3f3 } [class^="icon-"], [class*=" icon-"] { display: inline-block; width: 14px; height: 14px; margin-top: 1px; *margin-right: .3em; line-height: 14px; vertical-align: text-top; background-image: url("../img/glyphicons-halflings.png"); background-position: 14px 14px; background-repeat: no-repeat } .icon-white, .nav-pills>.active>a>[class^="icon-"], .nav-pills>.active>a>[class*=" icon-"], .nav-list>.active>a>[class^="icon-"], .nav-list>.active>a>[class*=" icon-"], .navbar-inverse .nav>.active>a>[class^="icon-"], .navbar-inverse .nav>.active>a>[class*=" icon-"], .dropdown-menu>li>a:hover>[class^="icon-"], .dropdown-menu>li>a:hover>[class*=" icon-"], .dropdown-menu>.active>a>[class^="icon-"], .dropdown-menu>.active>a>[class*=" icon-"], .dropdown-submenu:hover>a>[class^="icon-"], .dropdown-submenu:hover>a>[class*=" icon-"] { background-image: url("../img/glyphicons-halflings-white.png") } .icon-glass { background-position: 0 0 } .icon-music { background-position: -24px 0 } .icon-search { background-position: -48px 0 } .icon-envelope { background-position: -72px 0 } .icon-heart { background-position: -96px 0 } .icon-star { background-position: -120px 0 } .icon-star-empty { background-position: -144px 0 } .icon-user { background-position: -168px 0 } .icon-film { background-position: -192px 0 } .icon-th-large { background-position: -216px 0 } .icon-th { background-position: -240px 0 } .icon-th-list { background-position: -264px 0 } .icon-ok { background-position: -288px 0 } .icon-remove { background-position: -312px 0 } .icon-zoom-in { background-position: -336px 0 } .icon-zoom-out { background-position: -360px 0 } .icon-off { background-position: -384px 0 } .icon-signal { background-position: -408px 0 } .icon-cog { background-position: -432px 0 } .icon-trash { background-position: -456px 0 } .icon-home { background-position: 0 -24px } .icon-file { background-position: -24px -24px } .icon-time { background-position: -48px -24px } .icon-road { background-position: -72px -24px } .icon-download-alt { background-position: -96px -24px } .icon-download { background-position: -120px -24px } .icon-upload { background-position: -144px -24px } .icon-inbox { background-position: -168px -24px } .icon-play-circle { background-position: -192px -24px } .icon-repeat { background-position: -216px -24px } .icon-refresh { background-position: -240px -24px } .icon-list-alt { background-position: -264px -24px } .icon-lock { background-position: -287px -24px } .icon-flag { background-position: -312px -24px } .icon-headphones { background-position: -336px -24px } .icon-volume-off { background-position: -360px -24px } .icon-volume-down { background-position: -384px -24px } .icon-volume-up { background-position: -408px -24px } .icon-qrcode { background-position: -432px -24px } .icon-barcode { background-position: -456px -24px } .icon-tag { background-position: 0 -48px } .icon-tags { background-position: -25px -48px } .icon-book { background-position: -48px -48px } .icon-bookmark { background-position: -72px -48px } .icon-print { background-position: -96px -48px } .icon-camera { background-position: -120px -48px } .icon-font { background-position: -144px -48px } .icon-bold { background-position: -167px -48px } .icon-italic { background-position: -192px -48px } .icon-text-height { background-position: -216px -48px } .icon-text-width { background-position: -240px -48px } .icon-align-left { background-position: -264px -48px } .icon-align-center { background-position: -288px -48px } .icon-align-right { background-position: -312px -48px } .icon-align-justify { background-position: -336px -48px } .icon-list { background-position: -360px -48px } .icon-indent-left { background-position: -384px -48px } .icon-indent-right { background-position: -408px -48px } .icon-facetime-video { background-position: -432px -48px } .icon-picture { background-position: -456px -48px } .icon-pencil { background-position: 0 -72px } .icon-map-marker { background-position: -24px -72px } .icon-adjust { background-position: -48px -72px } .icon-tint { background-position: -72px -72px } .icon-edit { background-position: -96px -72px } .icon-share { background-position: -120px -72px } .icon-check { background-position: -144px -72px } .icon-move { background-position: -168px -72px } .icon-step-backward { background-position: -192px -72px } .icon-fast-backward { background-position: -216px -72px } .icon-backward { background-position: -240px -72px } .icon-play { background-position: -264px -72px } .icon-pause { background-position: -288px -72px } .icon-stop { background-position: -312px -72px } .icon-forward { background-position: -336px -72px } .icon-fast-forward { background-position: -360px -72px } .icon-step-forward { background-position: -384px -72px } .icon-eject { background-position: -408px -72px } .icon-chevron-left { background-position: -432px -72px } .icon-chevron-right { background-position: -456px -72px } .icon-plus-sign { background-position: 0 -96px } .icon-minus-sign { background-position: -24px -96px } .icon-remove-sign { background-position: -48px -96px } .icon-ok-sign { background-position: -72px -96px } .icon-question-sign { background-position: -96px -96px } .icon-info-sign { background-position: -120px -96px } .icon-screenshot { background-position: -144px -96px } .icon-remove-circle { background-position: -168px -96px } .icon-ok-circle { background-position: -192px -96px } .icon-ban-circle { background-position: -216px -96px } .icon-arrow-left { background-position: -240px -96px } .icon-arrow-right { background-position: -264px -96px } .icon-arrow-up { background-position: -289px -96px } .icon-arrow-down { background-position: -312px -96px } .icon-share-alt { background-position: -336px -96px } .icon-resize-full { background-position: -360px -96px } .icon-resize-small { background-position: -384px -96px } .icon-plus { background-position: -408px -96px } .icon-minus { background-position: -433px -96px } .icon-asterisk { background-position: -456px -96px } .icon-exclamation-sign { background-position: 0 -120px } .icon-gift { background-position: -24px -120px } .icon-leaf { background-position: -48px -120px } .icon-fire { background-position: -72px -120px } .icon-eye-open { background-position: -96px -120px } .icon-eye-close { background-position: -120px -120px } .icon-warning-sign { background-position: -144px -120px } .icon-plane { background-position: -168px -120px } .icon-calendar { background-position: -192px -120px } .icon-random { width: 16px; background-position: -216px -120px } .icon-comment { background-position: -240px -120px } .icon-magnet { background-position: -264px -120px } .icon-chevron-up { background-position: -288px -120px } .icon-chevron-down { background-position: -313px -119px } .icon-retweet { background-position: -336px -120px } .icon-shopping-cart { background-position: -360px -120px } .icon-folder-close { background-position: -384px -120px } .icon-folder-open { width: 16px; background-position: -408px -120px } .icon-resize-vertical { background-position: -432px -119px } .icon-resize-horizontal { background-position: -456px -118px } .icon-hdd { background-position: 0 -144px } .icon-bullhorn { background-position: -24px -144px } .icon-bell { background-position: -48px -144px } .icon-certificate { background-position: -72px -144px } .icon-thumbs-up { background-position: -96px -144px } .icon-thumbs-down { background-position: -120px -144px } .icon-hand-right { background-position: -144px -144px } .icon-hand-left { background-position: -168px -144px } .icon-hand-up { background-position: -192px -144px } .icon-hand-down { background-position: -216px -144px } .icon-circle-arrow-right { background-position: -240px -144px } .icon-circle-arrow-left { background-position: -264px -144px } .icon-circle-arrow-up { background-position: -288px -144px } .icon-circle-arrow-down { background-position: -312px -144px } .icon-globe { background-position: -336px -144px } .icon-wrench { background-position: -360px -144px } .icon-tasks { background-position: -384px -144px } .icon-filter { background-position: -408px -144px } .icon-briefcase { background-position: -432px -144px } .icon-fullscreen { background-position: -456px -144px } .dropup, .dropdown { position: relative } .dropdown-toggle { *margin-bottom: -3px } .dropdown-toggle:active, .open .dropdown-toggle { outline: 0 } .caret { display: inline-block; width: 0; height: 0; vertical-align: top; border-top: 4px solid #000; border-right: 4px solid transparent; border-left: 4px solid transparent; content: "" } .dropdown .caret { margin-top: 8px; margin-left: 2px } .dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0; margin: 2px 0 0; list-style: none; background-color: #fff; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.2); *border-right-width: 2px; *border-bottom-width: 2px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -webkit-background-clip: padding-box; -moz-background-clip: padding; background-clip: padding-box } .dropdown-menu.pull-right { right: 0; left: auto } .dropdown-menu .divider { *width: 100%; height: 1px; margin: 9px 1px; *margin: -5px 0 5px; overflow: hidden; background-color: #e5e5e5; border-bottom: 1px solid #fff } .dropdown-menu li>a { display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 20px; color: #333; white-space: nowrap } .dropdown-menu li>a:hover, .dropdown-menu li>a:focus, .dropdown-submenu:hover>a { color: #fff; text-decoration: none; background-color: #0081c2; background-image: -moz-linear-gradient(top, #08c, #0077b3); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0077b3)); background-image: -webkit-linear-gradient(top, #08c, #0077b3); background-image: -o-linear-gradient(top, #08c, #0077b3); background-image: linear-gradient(to bottom, #08c, #0077b3); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0) } .dropdown-menu .active>a, .dropdown-menu .active>a:hover { color: #fff; text-decoration: none; background-color: #0081c2; background-image: -moz-linear-gradient(top, #08c, #0077b3); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0077b3)); background-image: -webkit-linear-gradient(top, #08c, #0077b3); background-image: -o-linear-gradient(top, #08c, #0077b3); background-image: linear-gradient(to bottom, #08c, #0077b3); background-repeat: repeat-x; outline: 0; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0) } .dropdown-menu .disabled>a, .dropdown-menu .disabled>a:hover { color: #999 } .dropdown-menu .disabled>a:hover { text-decoration: none; cursor: default; background-color: transparent; background-image: none; filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .open { *z-index: 1000 } .open>.dropdown-menu { display: block } .pull-right>.dropdown-menu { right: 0; left: auto } .dropup .caret, .navbar-fixed-bottom .dropdown .caret { border-top: 0; border-bottom: 4px solid #000; content: "" } .dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu { top: auto; bottom: 100%; margin-bottom: 1px } .dropdown-submenu { position: relative } .dropdown-submenu>.dropdown-menu { top: 0; left: 100%; margin-top: -6px; margin-left: -1px; -webkit-border-radius: 0 6px 6px 6px; -moz-border-radius: 0 6px 6px 6px; border-radius: 0 6px 6px 6px } .dropdown-submenu:hover>.dropdown-menu { display: block } .dropup .dropdown-submenu>.dropdown-menu { top: auto; bottom: 0; margin-top: 0; margin-bottom: -2px; -webkit-border-radius: 5px 5px 5px 0; -moz-border-radius: 5px 5px 5px 0; border-radius: 5px 5px 5px 0 } .dropdown-submenu>a:after { display: block; float: right; width: 0; height: 0; margin-top: 5px; margin-right: -10px; border-color: transparent; border-left-color: #ccc; border-style: solid; border-width: 5px 0 5px 5px; content: " " } .dropdown-submenu:hover>a:after { border-left-color: #fff } .dropdown-submenu.pull-left { float: none } .dropdown-submenu.pull-left>.dropdown-menu { left: -100%; margin-left: 10px; -webkit-border-radius: 6px 0 6px 6px; -moz-border-radius: 6px 0 6px 6px; border-radius: 6px 0 6px 6px } .dropdown .dropdown-menu .nav-header { padding-right: 20px; padding-left: 20px } .typeahead { z-index: 1051; margin-top: 2px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .well { min-height: 20px; padding: 19px; margin-bottom: 20px; background-color: #f5f5f5; border: 1px solid #e3e3e3; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05) } .well blockquote { border-color: #ddd; border-color: rgba(0, 0, 0, 0.15) } .well-large { padding: 24px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px } .well-small { padding: 9px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } .fade { opacity: 0; -webkit-transition: opacity .15s linear; -moz-transition: opacity .15s linear; -o-transition: opacity .15s linear; transition: opacity .15s linear } .fade.in { opacity: 1 } .collapse { position: relative; height: 0; overflow: hidden; -webkit-transition: height .35s ease; -moz-transition: height .35s ease; -o-transition: height .35s ease; transition: height .35s ease } .collapse.in { height: auto } .close { float: right; font-size: 20px; font-weight: bold; line-height: 20px; color: #000; text-shadow: 0 1px 0 #fff; opacity: .2; filter: alpha(opacity=20) } .close:hover { color: #000; text-decoration: none; cursor: pointer; opacity: .4; filter: alpha(opacity=40) } button.close { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none } .btn { display: inline-block; *display: inline; padding: 4px 12px; margin-bottom: 0; *margin-left: .3em; font-size: 14px; line-height: 20px; color: #333; text-align: center; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); vertical-align: middle; cursor: pointer; background-color: #f5f5f5; *background-color: #e6e6e6; background-image: -moz-linear-gradient(top, #fff, #e6e6e6); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6)); background-image: -webkit-linear-gradient(top, #fff, #e6e6e6); background-image: -o-linear-gradient(top, #fff, #e6e6e6); background-image: linear-gradient(to bottom, #fff, #e6e6e6); background-repeat: repeat-x; border: 1px solid #bbb; *border: 0; border-color: #e6e6e6 #e6e6e6 #bfbfbf; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); border-bottom-color: #a2a2a2; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); *zoom: 1; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05) } .btn:hover, .btn:active, .btn.active, .btn.disabled, .btn[disabled] { color: #333; background-color: #e6e6e6; *background-color: #d9d9d9 } .btn:active, .btn.active { background-color: #ccc \9 } .btn:first-child { *margin-left: 0 } .btn:hover { color: #333; text-decoration: none; background-position: 0 -15px; -webkit-transition: background-position .1s linear; -moz-transition: background-position .1s linear; -o-transition: background-position .1s linear; transition: background-position .1s linear } .btn:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px } .btn.active, .btn:active { background-image: none; outline: 0; -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) } .btn.disabled, .btn[disabled] { cursor: default; background-image: none; opacity: .65; filter: alpha(opacity=65); -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none } .btn-large { padding: 11px 19px; font-size: 17.5px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px } .btn-large [class^="icon-"], .btn-large [class*=" icon-"] { margin-top: 4px } .btn-small { padding: 2px 10px; font-size: 11.9px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } .btn-small [class^="icon-"], .btn-small [class*=" icon-"] { margin-top: 0 } .btn-mini [class^="icon-"], .btn-mini [class*=" icon-"] { margin-top: -1px } .btn-mini { padding: 0 6px; font-size: 10.5px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } .btn-block { display: block; width: 100%; padding-right: 0; padding-left: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .btn-block+.btn-block { margin-top: 5px } input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block { width: 100% } .btn-primary.active, .btn-warning.active, .btn-danger.active, .btn-success.active, .btn-info.active, .btn-inverse.active { color: rgba(255, 255, 255, 0.75) } .btn { border-color: #c5c5c5; border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25) } .btn-primary { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #006dcc; *background-color: #04c; background-image: -moz-linear-gradient(top, #08c, #04c); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c)); background-image: -webkit-linear-gradient(top, #08c, #04c); background-image: -o-linear-gradient(top, #08c, #04c); background-image: linear-gradient(to bottom, #08c, #04c); background-repeat: repeat-x; border-color: #04c #04c #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] { color: #fff; background-color: #04c; *background-color: #003bb3 } .btn-primary:active, .btn-primary.active { background-color: #039 \9 } .btn-warning { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #faa732; *background-color: #f89406; background-image: -moz-linear-gradient(top, #fbb450, #f89406); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); background-image: -webkit-linear-gradient(top, #fbb450, #f89406); background-image: -o-linear-gradient(top, #fbb450, #f89406); background-image: linear-gradient(to bottom, #fbb450, #f89406); background-repeat: repeat-x; border-color: #f89406 #f89406 #ad6704; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] { color: #fff; background-color: #f89406; *background-color: #df8505 } .btn-warning:active, .btn-warning.active { background-color: #c67605 \9 } .btn-danger { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #da4f49; *background-color: #bd362f; background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f)); background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f); background-image: -o-linear-gradient(top, #ee5f5b, #bd362f); background-image: linear-gradient(to bottom, #ee5f5b, #bd362f); background-repeat: repeat-x; border-color: #bd362f #bd362f #802420; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] { color: #fff; background-color: #bd362f; *background-color: #a9302a } .btn-danger:active, .btn-danger.active { background-color: #942a25 \9 } .btn-success { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #5bb75b; *background-color: #51a351; background-image: -moz-linear-gradient(top, #62c462, #51a351); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351)); background-image: -webkit-linear-gradient(top, #62c462, #51a351); background-image: -o-linear-gradient(top, #62c462, #51a351); background-image: linear-gradient(to bottom, #62c462, #51a351); background-repeat: repeat-x; border-color: #51a351 #51a351 #387038; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] { color: #fff; background-color: #51a351; *background-color: #499249 } .btn-success:active, .btn-success.active { background-color: #408140 \9 } .btn-info { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #49afcd; *background-color: #2f96b4; background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4)); background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4); background-image: -o-linear-gradient(top, #5bc0de, #2f96b4); background-image: linear-gradient(to bottom, #5bc0de, #2f96b4); background-repeat: repeat-x; border-color: #2f96b4 #2f96b4 #1f6377; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] { color: #fff; background-color: #2f96b4; *background-color: #2a85a0 } .btn-info:active, .btn-info.active { background-color: #24748c \9 } .btn-inverse { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #363636; *background-color: #222; background-image: -moz-linear-gradient(top, #444, #222); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444), to(#222)); background-image: -webkit-linear-gradient(top, #444, #222); background-image: -o-linear-gradient(top, #444, #222); background-image: linear-gradient(to bottom, #444, #222); background-repeat: repeat-x; border-color: #222 #222 #000; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] { color: #fff; background-color: #222; *background-color: #151515 } .btn-inverse:active, .btn-inverse.active { background-color: #080808 \9 } button.btn, input[type="submit"].btn { *padding-top: 3px; *padding-bottom: 3px } button.btn::-moz-focus-inner, input[type="submit"].btn::-moz-focus-inner { padding: 0; border: 0 } button.btn.btn-large, input[type="submit"].btn.btn-large { *padding-top: 7px; *padding-bottom: 7px } button.btn.btn-small, input[type="submit"].btn.btn-small { *padding-top: 3px; *padding-bottom: 3px } button.btn.btn-mini, input[type="submit"].btn.btn-mini { *padding-top: 1px; *padding-bottom: 1px } .btn-link, .btn-link:active, .btn-link[disabled] { background-color: transparent; background-image: none; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none } .btn-link { color: #08c; cursor: pointer; border-color: transparent; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .btn-link:hover { color: #005580; text-decoration: underline; background-color: transparent } .btn-link[disabled]:hover { color: #333; text-decoration: none } .btn-group { position: relative; display: inline-block; *display: inline; *margin-left: .3em; font-size: 0; white-space: nowrap; vertical-align: middle; *zoom: 1 } .btn-group:first-child { *margin-left: 0 } .btn-group+.btn-group { margin-left: 5px } .btn-toolbar { margin-top: 10px; margin-bottom: 10px; font-size: 0 } .btn-toolbar>.btn+.btn, .btn-toolbar>.btn-group+.btn, .btn-toolbar>.btn+.btn-group { margin-left: 5px } .btn-group>.btn { position: relative; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .btn-group>.btn+.btn { margin-left: -1px } .btn-group>.btn, .btn-group>.dropdown-menu, .btn-group>.popover { font-size: 14px } .btn-group>.btn-mini { font-size: 10.5px } .btn-group>.btn-small { font-size: 11.9px } .btn-group>.btn-large { font-size: 17.5px } .btn-group>.btn:first-child { margin-left: 0; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-topleft: 4px } .btn-group>.btn:last-child, .btn-group>.dropdown-toggle { -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; -moz-border-radius-topright: 4px; -moz-border-radius-bottomright: 4px } .btn-group>.btn.large:first-child { margin-left: 0; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-bottomleft: 6px; -moz-border-radius-topleft: 6px } .btn-group>.btn.large:last-child, .btn-group>.large.dropdown-toggle { -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; -moz-border-radius-topright: 6px; -moz-border-radius-bottomright: 6px } .btn-group>.btn:hover, .btn-group>.btn:focus, .btn-group>.btn:active, .btn-group>.btn.active { z-index: 2 } .btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0 } .btn-group>.btn+.dropdown-toggle { *padding-top: 5px; padding-right: 8px; *padding-bottom: 5px; padding-left: 8px; -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05) } .btn-group>.btn-mini+.dropdown-toggle { *padding-top: 2px; padding-right: 5px; *padding-bottom: 2px; padding-left: 5px } .btn-group>.btn-small+.dropdown-toggle { *padding-top: 5px; *padding-bottom: 4px } .btn-group>.btn-large+.dropdown-toggle { *padding-top: 7px; padding-right: 12px; *padding-bottom: 7px; padding-left: 12px } .btn-group.open .dropdown-toggle { background-image: none; -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) } .btn-group.open .btn.dropdown-toggle { background-color: #e6e6e6 } .btn-group.open .btn-primary.dropdown-toggle { background-color: #04c } .btn-group.open .btn-warning.dropdown-toggle { background-color: #f89406 } .btn-group.open .btn-danger.dropdown-toggle { background-color: #bd362f } .btn-group.open .btn-success.dropdown-toggle { background-color: #51a351 } .btn-group.open .btn-info.dropdown-toggle { background-color: #2f96b4 } .btn-group.open .btn-inverse.dropdown-toggle { background-color: #222 } .btn .caret { margin-top: 8px; margin-left: 0 } .btn-mini .caret, .btn-small .caret, .btn-large .caret { margin-top: 6px } .btn-large .caret { border-top-width: 5px; border-right-width: 5px; border-left-width: 5px } .dropup .btn-large .caret { border-bottom-width: 5px } .btn-primary .caret, .btn-warning .caret, .btn-danger .caret, .btn-info .caret, .btn-success .caret, .btn-inverse .caret { border-top-color: #fff; border-bottom-color: #fff } .btn-group-vertical { display: inline-block; *display: inline; *zoom: 1 } .btn-group-vertical>.btn { display: block; float: none; max-width: 100%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .btn-group-vertical>.btn+.btn { margin-top: -1px; margin-left: 0 } .btn-group-vertical>.btn:first-child { -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0 } .btn-group-vertical>.btn:last-child { -webkit-border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; border-radius: 0 0 4px 4px } .btn-group-vertical>.btn-large:first-child { -webkit-border-radius: 6px 6px 0 0; -moz-border-radius: 6px 6px 0 0; border-radius: 6px 6px 0 0 } .btn-group-vertical>.btn-large:last-child { -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px } .alert { padding: 8px 35px 8px 14px; margin-bottom: 20px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); background-color: #fcf8e3; border: 1px solid #fbeed5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .alert, .alert h4 { color: #c09853 } .alert h4 { margin: 0 } .alert .close { position: relative; top: -2px; right: -21px; line-height: 20px } .alert-success { color: #468847; background-color: #dff0d8; border-color: #d6e9c6 } .alert-success h4 { color: #468847 } .alert-danger, .alert-error { color: #b94a48; background-color: #f2dede; border-color: #eed3d7 } .alert-danger h4, .alert-error h4 { color: #b94a48 } .alert-info { color: #3a87ad; background-color: #d9edf7; border-color: #bce8f1 } .alert-info h4 { color: #3a87ad } .alert-block { padding-top: 14px; padding-bottom: 14px } .alert-block>p, .alert-block>ul { margin-bottom: 0 } .alert-block p+p { margin-top: 5px } .nav { margin-bottom: 20px; margin-left: 0; list-style: none } .nav>li>a { display: block } .nav>li>a:hover { text-decoration: none; background-color: #eee } .nav>li>a>img { max-width: none } .nav>.pull-right { float: right } .nav-header { display: block; padding: 3px 15px; font-size: 11px; font-weight: bold; line-height: 20px; color: #999; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); text-transform: uppercase } .nav li+.nav-header { margin-top: 9px } .nav-list { padding-right: 15px; padding-left: 15px; margin-bottom: 0 } .nav-list>li>a, .nav-list .nav-header { margin-right: -15px; margin-left: -15px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) } .nav-list>li>a { padding: 3px 15px } .nav-list>.active>a, .nav-list>.active>a:hover { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); background-color: #08c } .nav-list [class^="icon-"], .nav-list [class*=" icon-"] { margin-right: 2px } .nav-list .divider { *width: 100%; height: 1px; margin: 9px 1px; *margin: -5px 0 5px; overflow: hidden; background-color: #e5e5e5; border-bottom: 1px solid #fff } .nav-tabs, .nav-pills { *zoom: 1 } .nav-tabs:before, .nav-pills:before, .nav-tabs:after, .nav-pills:after { display: table; line-height: 0; content: "" } .nav-tabs:after, .nav-pills:after { clear: both } .nav-tabs>li, .nav-pills>li { float: left } .nav-tabs>li>a, .nav-pills>li>a { padding-right: 12px; padding-left: 12px; margin-right: 2px; line-height: 14px } .nav-tabs { border-bottom: 1px solid #ddd } .nav-tabs>li { margin-bottom: -1px } .nav-tabs>li>a { padding-top: 8px; padding-bottom: 8px; line-height: 20px; border: 1px solid transparent; -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0 } .nav-tabs>li>a:hover { border-color: #eee #eee #ddd } .nav-tabs>.active>a, .nav-tabs>.active>a:hover { color: #555; cursor: default; background-color: #fff; border: 1px solid #ddd; border-bottom-color: transparent } .nav-pills>li>a { padding-top: 8px; padding-bottom: 8px; margin-top: 2px; margin-bottom: 2px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px } .nav-pills>.active>a, .nav-pills>.active>a:hover { color: #fff; background-color: #08c } .nav-stacked>li { float: none } .nav-stacked>li>a { margin-right: 0 } .nav-tabs.nav-stacked { border-bottom: 0 } .nav-tabs.nav-stacked>li>a { border: 1px solid #ddd; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .nav-tabs.nav-stacked>li:first-child>a { -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -moz-border-radius-topleft: 4px } .nav-tabs.nav-stacked>li:last-child>a { -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px } .nav-tabs.nav-stacked>li>a:hover { z-index: 2; border-color: #ddd } .nav-pills.nav-stacked>li>a { margin-bottom: 3px } .nav-pills.nav-stacked>li:last-child>a { margin-bottom: 1px } .nav-tabs .dropdown-menu { -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px } .nav-pills .dropdown-menu { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px } .nav .dropdown-toggle .caret { margin-top: 6px; border-top-color: #08c; border-bottom-color: #08c } .nav .dropdown-toggle:hover .caret { border-top-color: #005580; border-bottom-color: #005580 } .nav-tabs .dropdown-toggle .caret { margin-top: 8px } .nav .active .dropdown-toggle .caret { border-top-color: #fff; border-bottom-color: #fff } .nav-tabs .active .dropdown-toggle .caret { border-top-color: #555; border-bottom-color: #555 } .nav>.dropdown.active>a:hover { cursor: pointer } .nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav>li.dropdown.open.active>a:hover { color: #fff; background-color: #999; border-color: #999 } .nav li.dropdown.open .caret, .nav li.dropdown.open.active .caret, .nav li.dropdown.open a:hover .caret { border-top-color: #fff; border-bottom-color: #fff; opacity: 1; filter: alpha(opacity=100) } .tabs-stacked .open>a:hover { border-color: #999 } .tabbable { *zoom: 1 } .tabbable:before, .tabbable:after { display: table; line-height: 0; content: "" } .tabbable:after { clear: both } .tab-content { overflow: auto } .tabs-below>.nav-tabs, .tabs-right>.nav-tabs, .tabs-left>.nav-tabs { border-bottom: 0 } .tab-content>.tab-pane, .pill-content>.pill-pane { display: none } .tab-content>.active, .pill-content>.active { display: block } .tabs-below>.nav-tabs { border-top: 1px solid #ddd } .tabs-below>.nav-tabs>li { margin-top: -1px; margin-bottom: 0 } .tabs-below>.nav-tabs>li>a { -webkit-border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; border-radius: 0 0 4px 4px } .tabs-below>.nav-tabs>li>a:hover { border-top-color: #ddd; border-bottom-color: transparent } .tabs-below>.nav-tabs>.active>a, .tabs-below>.nav-tabs>.active>a:hover { border-color: transparent #ddd #ddd #ddd } .tabs-left>.nav-tabs>li, .tabs-right>.nav-tabs>li { float: none } .tabs-left>.nav-tabs>li>a, .tabs-right>.nav-tabs>li>a { min-width: 74px; margin-right: 0; margin-bottom: 3px } .tabs-left>.nav-tabs { float: left; margin-right: 19px; border-right: 1px solid #ddd } .tabs-left>.nav-tabs>li>a { margin-right: -1px; -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px } .tabs-left>.nav-tabs>li>a:hover { border-color: #eee #ddd #eee #eee } .tabs-left>.nav-tabs .active>a, .tabs-left>.nav-tabs .active>a:hover { border-color: #ddd transparent #ddd #ddd; *border-right-color: #fff } .tabs-right>.nav-tabs { float: right; margin-left: 19px; border-left: 1px solid #ddd } .tabs-right>.nav-tabs>li>a { margin-left: -1px; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0 } .tabs-right>.nav-tabs>li>a:hover { border-color: #eee #eee #eee #ddd } .tabs-right>.nav-tabs .active>a, .tabs-right>.nav-tabs .active>a:hover { border-color: #ddd #ddd #ddd transparent; *border-left-color: #fff } .nav>.disabled>a { color: #999 } .nav>.disabled>a:hover { text-decoration: none; cursor: default; background-color: transparent } .navbar { *position: relative; *z-index: 2; margin-bottom: 20px; overflow: visible } .navbar-inner { min-height: 40px; padding-right: 20px; padding-left: 20px; background-color: #fafafa; background-image: -moz-linear-gradient(top, #fff, #f2f2f2); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f2f2)); background-image: -webkit-linear-gradient(top, #fff, #f2f2f2); background-image: -o-linear-gradient(top, #fff, #f2f2f2); background-image: linear-gradient(to bottom, #fff, #f2f2f2); background-repeat: repeat-x; border: 1px solid #d4d4d4; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); *zoom: 1; -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065) } .navbar-inner:before, .navbar-inner:after { display: table; line-height: 0; content: "" } .navbar-inner:after { clear: both } .navbar .container { width: auto } .nav-collapse.collapse { height: auto; overflow: visible } .navbar .brand { display: block; float: left; padding: 10px 20px 10px; margin-left: -20px; font-size: 20px; font-weight: 200; color: #777; text-shadow: 0 1px 0 #fff } .navbar .brand:hover { text-decoration: none } .navbar-text { margin-bottom: 0; line-height: 40px; color: #777 } .navbar-link { color: #777 } .navbar-link:hover { color: #333 } .navbar .divider-vertical { height: 40px; margin: 0 9px; border-right: 1px solid #fff; border-left: 1px solid #f2f2f2 } .navbar .btn, .navbar .btn-group { margin-top: 5px } .navbar .btn-group .btn, .navbar .input-prepend .btn, .navbar .input-append .btn { margin-top: 0 } .navbar-form { margin-bottom: 0; *zoom: 1 } .navbar-form:before, .navbar-form:after { display: table; line-height: 0; content: "" } .navbar-form:after { clear: both } .navbar-form input, .navbar-form select, .navbar-form .radio, .navbar-form .checkbox { margin-top: 5px } .navbar-form input, .navbar-form select, .navbar-form .btn { display: inline-block; margin-bottom: 0 } .navbar-form input[type="image"], .navbar-form input[type="checkbox"], .navbar-form input[type="radio"] { margin-top: 3px } .navbar-form .input-append, .navbar-form .input-prepend { margin-top: 5px; white-space: nowrap } .navbar-form .input-append input, .navbar-form .input-prepend input { margin-top: 0 } .navbar-search { position: relative; float: left; margin-top: 5px; margin-bottom: 0 } .navbar-search .search-query { padding: 4px 14px; margin-bottom: 0; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; font-weight: normal; line-height: 1; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px } .navbar-static-top { position: static; margin-bottom: 0 } .navbar-static-top .navbar-inner { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .navbar-fixed-top, .navbar-fixed-bottom { position: fixed; right: 0; left: 0; z-index: 1030; margin-bottom: 0 } .navbar-fixed-top .navbar-inner, .navbar-static-top .navbar-inner { border-width: 0 0 1px } .navbar-fixed-bottom .navbar-inner { border-width: 1px 0 0 } .navbar-fixed-top .navbar-inner, .navbar-fixed-bottom .navbar-inner { padding-right: 0; padding-left: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0 } .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 940px } .navbar-fixed-top { top: 0 } .navbar-fixed-top .navbar-inner, .navbar-static-top .navbar-inner { -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1) } .navbar-fixed-bottom { bottom: 0 } .navbar-fixed-bottom .navbar-inner { -webkit-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1) } .navbar .nav { position: relative; left: 0; display: block; float: left; margin: 0 10px 0 0 } .navbar .nav.pull-right { float: right; margin-right: 0 } .navbar .nav>li { float: left } .navbar .nav>li>a { float: none; padding: 10px 15px 10px; color: #777; text-decoration: none; text-shadow: 0 1px 0 #fff } .navbar .nav .dropdown-toggle .caret { margin-top: 8px } .navbar .nav>li>a:focus, .navbar .nav>li>a:hover { color: #333; text-decoration: none; background-color: transparent } .navbar .nav>.active>a, .navbar .nav>.active>a:hover, .navbar .nav>.active>a:focus { color: #555; text-decoration: none; background-color: #e5e5e5; -webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); -moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125) } .navbar .btn-navbar { display: none; float: right; padding: 7px 10px; margin-right: 5px; margin-left: 5px; color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #ededed; *background-color: #e5e5e5; background-image: -moz-linear-gradient(top, #f2f2f2, #e5e5e5); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5)); background-image: -webkit-linear-gradient(top, #f2f2f2, #e5e5e5); background-image: -o-linear-gradient(top, #f2f2f2, #e5e5e5); background-image: linear-gradient(to bottom, #f2f2f2, #e5e5e5); background-repeat: repeat-x; border-color: #e5e5e5 #e5e5e5 #bfbfbf; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075) } .navbar .btn-navbar:hover, .navbar .btn-navbar:active, .navbar .btn-navbar.active, .navbar .btn-navbar.disabled, .navbar .btn-navbar[disabled] { color: #fff; background-color: #e5e5e5; *background-color: #d9d9d9 } .navbar .btn-navbar:active, .navbar .btn-navbar.active { background-color: #ccc \9 } .navbar .btn-navbar .icon-bar { display: block; width: 18px; height: 2px; background-color: #f5f5f5; -webkit-border-radius: 1px; -moz-border-radius: 1px; border-radius: 1px; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25) } .btn-navbar .icon-bar+.icon-bar { margin-top: 3px } .navbar .nav>li>.dropdown-menu:before { position: absolute; top: -7px; left: 9px; display: inline-block; border-right: 7px solid transparent; border-bottom: 7px solid #ccc; border-left: 7px solid transparent; border-bottom-color: rgba(0, 0, 0, 0.2); content: '' } .navbar .nav>li>.dropdown-menu:after { position: absolute; top: -6px; left: 10px; display: inline-block; border-right: 6px solid transparent; border-bottom: 6px solid #fff; border-left: 6px solid transparent; content: '' } .navbar-fixed-bottom .nav>li>.dropdown-menu:before { top: auto; bottom: -7px; border-top: 7px solid #ccc; border-bottom: 0; border-top-color: rgba(0, 0, 0, 0.2) } .navbar-fixed-bottom .nav>li>.dropdown-menu:after { top: auto; bottom: -6px; border-top: 6px solid #fff; border-bottom: 0 } .navbar .nav li.dropdown>a:hover .caret { border-top-color: #555; border-bottom-color: #555 } .navbar .nav li.dropdown.open>.dropdown-toggle, .navbar .nav li.dropdown.active>.dropdown-toggle, .navbar .nav li.dropdown.open.active>.dropdown-toggle { color: #555; background-color: #e5e5e5 } .navbar .nav li.dropdown>.dropdown-toggle .caret { border-top-color: #777; border-bottom-color: #777 } .navbar .nav li.dropdown.open>.dropdown-toggle .caret, .navbar .nav li.dropdown.active>.dropdown-toggle .caret, .navbar .nav li.dropdown.open.active>.dropdown-toggle .caret { border-top-color: #555; border-bottom-color: #555 } .navbar .pull-right>li>.dropdown-menu, .navbar .nav>li>.dropdown-menu.pull-right { right: 0; left: auto } .navbar .pull-right>li>.dropdown-menu:before, .navbar .nav>li>.dropdown-menu.pull-right:before { right: 12px; left: auto } .navbar .pull-right>li>.dropdown-menu:after, .navbar .nav>li>.dropdown-menu.pull-right:after { right: 13px; left: auto } .navbar .pull-right>li>.dropdown-menu .dropdown-menu, .navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu { right: 100%; left: auto; margin-right: -1px; margin-left: 0; -webkit-border-radius: 6px 0 6px 6px; -moz-border-radius: 6px 0 6px 6px; border-radius: 6px 0 6px 6px } .navbar-inverse .navbar-inner { background-color: #1b1b1b; background-image: -moz-linear-gradient(top, #222, #111); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222), to(#111)); background-image: -webkit-linear-gradient(top, #222, #111); background-image: -o-linear-gradient(top, #222, #111); background-image: linear-gradient(to bottom, #222, #111); background-repeat: repeat-x; border-color: #252525; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0) } .navbar-inverse .brand, .navbar-inverse .nav>li>a { color: #999; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) } .navbar-inverse .brand:hover, .navbar-inverse .nav>li>a:hover { color: #fff } .navbar-inverse .brand { color: #999 } .navbar-inverse .navbar-text { color: #999 } .navbar-inverse .nav>li>a:focus, .navbar-inverse .nav>li>a:hover { color: #fff; background-color: transparent } .navbar-inverse .nav .active>a, .navbar-inverse .nav .active>a:hover, .navbar-inverse .nav .active>a:focus { color: #fff; background-color: #111 } .navbar-inverse .navbar-link { color: #999 } .navbar-inverse .navbar-link:hover { color: #fff } .navbar-inverse .divider-vertical { border-right-color: #222; border-left-color: #111 } .navbar-inverse .nav li.dropdown.open>.dropdown-toggle, .navbar-inverse .nav li.dropdown.active>.dropdown-toggle, .navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle { color: #fff; background-color: #111 } .navbar-inverse .nav li.dropdown>a:hover .caret { border-top-color: #fff; border-bottom-color: #fff } .navbar-inverse .nav li.dropdown>.dropdown-toggle .caret { border-top-color: #999; border-bottom-color: #999 } .navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret, .navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret, .navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret { border-top-color: #fff; border-bottom-color: #fff } .navbar-inverse .navbar-search .search-query { color: #fff; background-color: #515151; border-color: #111; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none } .navbar-inverse .navbar-search .search-query:-moz-placeholder { color: #ccc } .navbar-inverse .navbar-search .search-query:-ms-input-placeholder { color: #ccc } .navbar-inverse .navbar-search .search-query::-webkit-input-placeholder { color: #ccc } .navbar-inverse .navbar-search .search-query:focus, .navbar-inverse .navbar-search .search-query.focused { padding: 5px 15px; color: #333; text-shadow: 0 1px 0 #fff; background-color: #fff; border: 0; outline: 0; -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); box-shadow: 0 0 3px rgba(0, 0, 0, 0.15) } .navbar-inverse .btn-navbar { color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #0e0e0e; *background-color: #040404; background-image: -moz-linear-gradient(top, #151515, #040404); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404)); background-image: -webkit-linear-gradient(top, #151515, #040404); background-image: -o-linear-gradient(top, #151515, #040404); background-image: linear-gradient(to bottom, #151515, #040404); background-repeat: repeat-x; border-color: #040404 #040404 #000; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0); filter: progid: DXImageTransform.Microsoft.gradient(enabled=false) } .navbar-inverse .btn-navbar:hover, .navbar-inverse .btn-navbar:active, .navbar-inverse .btn-navbar.active, .navbar-inverse .btn-navbar.disabled, .navbar-inverse .btn-navbar[disabled] { color: #fff; background-color: #040404; *background-color: #000 } .navbar-inverse .btn-navbar:active, .navbar-inverse .btn-navbar.active { background-color: #000 \9 } .breadcrumb { padding: 8px 15px; margin: 0 0 20px; list-style: none; background-color: #f5f5f5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .breadcrumb>li { display: inline-block; *display: inline; text-shadow: 0 1px 0 #fff; *zoom: 1 } .breadcrumb>li>.divider { padding: 0 5px; color: #ccc } .breadcrumb>.active { color: #999 } .pagination { margin: 20px 0 } .pagination ul { display: inline-block; *display: inline; margin-bottom: 0; margin-left: 0; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; *zoom: 1; -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) } .pagination ul>li { display: inline } .pagination ul>li>a, .pagination ul>li>span { float: left; padding: 4px 12px; line-height: 20px; text-decoration: none; background-color: #fff; border: 1px solid #ddd; border-left-width: 0 } .pagination ul>li>a:hover, .pagination ul>.active>a, .pagination ul>.active>span { background-color: #f5f5f5 } .pagination ul>.active>a, .pagination ul>.active>span { color: #999; cursor: default } .pagination ul>.disabled>span, .pagination ul>.disabled>a, .pagination ul>.disabled>a:hover { color: #999; cursor: default; background-color: transparent } .pagination ul>li:first-child>a, .pagination ul>li:first-child>span { border-left-width: 1px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-topleft: 4px } .pagination ul>li:last-child>a, .pagination ul>li:last-child>span { -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; -moz-border-radius-topright: 4px; -moz-border-radius-bottomright: 4px } .pagination-centered { text-align: center } .pagination-right { text-align: right } .pagination-large ul>li>a, .pagination-large ul>li>span { padding: 11px 19px; font-size: 17.5px } .pagination-large ul>li:first-child>a, .pagination-large ul>li:first-child>span { -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-bottomleft: 6px; -moz-border-radius-topleft: 6px } .pagination-large ul>li:last-child>a, .pagination-large ul>li:last-child>span { -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; -moz-border-radius-topright: 6px; -moz-border-radius-bottomright: 6px } .pagination-mini ul>li:first-child>a, .pagination-small ul>li:first-child>a, .pagination-mini ul>li:first-child>span, .pagination-small ul>li:first-child>span { -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -moz-border-radius-bottomleft: 3px; -moz-border-radius-topleft: 3px } .pagination-mini ul>li:last-child>a, .pagination-small ul>li:last-child>a, .pagination-mini ul>li:last-child>span, .pagination-small ul>li:last-child>span { -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; -moz-border-radius-topright: 3px; -moz-border-radius-bottomright: 3px } .pagination-small ul>li>a, .pagination-small ul>li>span { padding: 2px 10px; font-size: 11.9px } .pagination-mini ul>li>a, .pagination-mini ul>li>span { padding: 0 6px; font-size: 10.5px } .pager { margin: 20px 0; text-align: center; list-style: none; *zoom: 1 } .pager:before, .pager:after { display: table; line-height: 0; content: "" } .pager:after { clear: both } .pager li { display: inline } .pager li>a, .pager li>span { display: inline-block; padding: 5px 14px; background-color: #fff; border: 1px solid #ddd; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px } .pager li>a:hover { text-decoration: none; background-color: #f5f5f5 } .pager .next>a, .pager .next>span { float: right } .pager .previous>a, .pager .previous>span { float: left } .pager .disabled>a, .pager .disabled>a:hover, .pager .disabled>span { color: #999; cursor: default; background-color: #fff } .modal-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; background-color: #000 } .modal-backdrop.fade { opacity: 0 } .modal-backdrop, .modal-backdrop.fade.in { opacity: .8; filter: alpha(opacity=80) } .modal { position: fixed; top: 10%; left: 50%; z-index: 1050; width: 560px; margin-left: -280px; background-color: #fff; border: 1px solid #999; border: 1px solid rgba(0, 0, 0, 0.3); *border: 1px solid #999; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; outline: 0; -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); -webkit-background-clip: padding-box; -moz-background-clip: padding-box; background-clip: padding-box } .modal.fade { top: -25%; -webkit-transition: opacity .3s linear, top .3s ease-out; -moz-transition: opacity .3s linear, top .3s ease-out; -o-transition: opacity .3s linear, top .3s ease-out; transition: opacity .3s linear, top .3s ease-out } .modal.fade.in { top: 10% } .modal-header { padding: 9px 15px; border-bottom: 1px solid #eee } .modal-header .close { margin-top: 2px } .modal-header h3 { margin: 0; line-height: 30px } .modal-body { position: relative; max-height: 400px; padding: 15px; overflow-y: auto } .modal-form { margin-bottom: 0 } .modal-footer { padding: 14px 15px 15px; margin-bottom: 0; text-align: right; background-color: #f5f5f5; border-top: 1px solid #ddd; -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px; *zoom: 1; -webkit-box-shadow: inset 0 1px 0 #fff; -moz-box-shadow: inset 0 1px 0 #fff; box-shadow: inset 0 1px 0 #fff } .modal-footer:before, .modal-footer:after { display: table; line-height: 0; content: "" } .modal-footer:after { clear: both } .modal-footer .btn+.btn { margin-bottom: 0; margin-left: 5px } .modal-footer .btn-group .btn+.btn { margin-left: -1px } .modal-footer .btn-block+.btn-block { margin-left: 0 } .tooltip { position: absolute; z-index: 1030; display: block; padding: 5px; font-size: 11px; opacity: 0; filter: alpha(opacity=0); visibility: visible } .tooltip.in { opacity: .8; filter: alpha(opacity=80) } .tooltip.top { margin-top: -3px } .tooltip.right { margin-left: 3px } .tooltip.bottom { margin-top: 3px } .tooltip.left { margin-left: -3px } .tooltip-inner { max-width: 200px; padding: 3px 8px; color: #fff; text-align: center; text-decoration: none; background-color: #000; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid } .tooltip.top .tooltip-arrow { bottom: 0; left: 50%; margin-left: -5px; border-top-color: #000; border-width: 5px 5px 0 } .tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-right-color: #000; border-width: 5px 5px 5px 0 } .tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-left-color: #000; border-width: 5px 0 5px 5px } .tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-bottom-color: #000; border-width: 0 5px 5px } .popover { position: absolute; top: 0; left: 0; z-index: 1010; display: none; width: 236px; padding: 1px; text-align: left; white-space: normal; background-color: #fff; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, 0.2); -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -webkit-background-clip: padding-box; -moz-background-clip: padding; background-clip: padding-box } .popover.top { margin-top: -10px } .popover.right { margin-left: 10px } .popover.bottom { margin-top: 10px } .popover.left { margin-left: -10px } .popover-title { padding: 8px 14px; margin: 0; font-size: 14px; font-weight: normal; line-height: 18px; background-color: #f7f7f7; border-bottom: 1px solid #ebebeb; -webkit-border-radius: 5px 5px 0 0; -moz-border-radius: 5px 5px 0 0; border-radius: 5px 5px 0 0 } .popover-content { padding: 9px 14px } .popover .arrow, .popover .arrow:after { position: absolute; display: block; width: 0; height: 0; border-color: transparent; border-style: solid } .popover .arrow { border-width: 11px } .popover .arrow:after { border-width: 10px; content: "" } .popover.top .arrow { bottom: -11px; left: 50%; margin-left: -11px; border-top-color: #999; border-top-color: rgba(0, 0, 0, 0.25); border-bottom-width: 0 } .popover.top .arrow:after { bottom: 1px; margin-left: -10px; border-top-color: #fff; border-bottom-width: 0 } .popover.right .arrow { top: 50%; left: -11px; margin-top: -11px; border-right-color: #999; border-right-color: rgba(0, 0, 0, 0.25); border-left-width: 0 } .popover.right .arrow:after { bottom: -10px; left: 1px; border-right-color: #fff; border-left-width: 0 } .popover.bottom .arrow { top: -11px; left: 50%; margin-left: -11px; border-bottom-color: #999; border-bottom-color: rgba(0, 0, 0, 0.25); border-top-width: 0 } .popover.bottom .arrow:after { top: 1px; margin-left: -10px; border-bottom-color: #fff; border-top-width: 0 } .popover.left .arrow { top: 50%; right: -11px; margin-top: -11px; border-left-color: #999; border-left-color: rgba(0, 0, 0, 0.25); border-right-width: 0 } .popover.left .arrow:after { right: 1px; bottom: -10px; border-left-color: #fff; border-right-width: 0 } .thumbnails { margin-left: -20px; list-style: none; *zoom: 1 } .thumbnails:before, .thumbnails:after { display: table; line-height: 0; content: "" } .thumbnails:after { clear: both } .row-fluid .thumbnails { margin-left: 0 } .thumbnails>li { float: left; margin-bottom: 20px; margin-left: 20px } .thumbnail { display: block; padding: 4px; line-height: 20px; border: 1px solid #ddd; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); -webkit-transition: all .2s ease-in-out; -moz-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out } a.thumbnail:hover { border-color: #08c; -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25) } .thumbnail>img { display: block; /*max-width:100%;*/ margin-right: auto; margin-left: auto } .thumbnail .caption { padding: 9px; color: #555 } .media, .media-body { overflow: hidden; *overflow: visible; zoom: 1 } .media, .media .media { margin-top: 15px } .media:first-child { margin-top: 0 } .media-object { display: block } .media-heading { margin: 0 0 5px } .media .pull-left { margin-right: 10px } .media .pull-right { margin-left: 10px } .media-list { margin-left: 0; list-style: none } .label, .badge { display: inline-block; padding: 2px 4px; font-size: 11.844px; font-weight: bold; line-height: 14px; color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); white-space: nowrap; vertical-align: baseline; background-color: #999 } .label { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } .badge { padding-right: 9px; padding-left: 9px; -webkit-border-radius: 9px; -moz-border-radius: 9px; border-radius: 9px } .label:empty, .badge:empty { display: none } a.label:hover, a.badge:hover { color: #fff; text-decoration: none; cursor: pointer } .label-important, .badge-important { background-color: #b94a48 } .label-important[href], .badge-important[href] { background-color: #953b39 } .label-warning, .badge-warning { background-color: #f89406 } .label-warning[href], .badge-warning[href] { background-color: #c67605 } .label-success, .badge-success { background-color: #468847 } .label-success[href], .badge-success[href] { background-color: #356635 } .label-info, .badge-info { background-color: #3a87ad } .label-info[href], .badge-info[href] { background-color: #2d6987 } .label-inverse, .badge-inverse { background-color: #333 } .label-inverse[href], .badge-inverse[href] { background-color: #1a1a1a } .btn .label, .btn .badge { position: relative; top: -1px } .btn-mini .label, .btn-mini .badge { top: 0 } @-webkit-keyframes progress-bar-stripes { from { background-position: 40px 0 } to { background-position: 0 0 } } @-moz-keyframes progress-bar-stripes { from { background-position: 40px 0 } to { background-position: 0 0 } } @-ms-keyframes progress-bar-stripes { from { background-position: 40px 0 } to { background-position: 0 0 } } @-o-keyframes progress-bar-stripes { from { background-position: 0 0 } to { background-position: 40px 0 } } @keyframes progress-bar-stripes { from { background-position: 40px 0 } to { background-position: 0 0 } } .progress { height: 20px; margin-bottom: 20px; overflow: hidden; background-color: #f7f7f7; background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9)); background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9); background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9); background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9); background-repeat: repeat-x; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0); -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) } .progress .bar { float: left; width: 0; height: 100%; font-size: 12px; color: #fff; text-align: center; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #0e90d2; background-image: -moz-linear-gradient(top, #149bdf, #0480be); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be)); background-image: -webkit-linear-gradient(top, #149bdf, #0480be); background-image: -o-linear-gradient(top, #149bdf, #0480be); background-image: linear-gradient(to bottom, #149bdf, #0480be); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0); -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: width .6s ease; -moz-transition: width .6s ease; -o-transition: width .6s ease; transition: width .6s ease } .progress .bar+.bar { -webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); -moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15) } .progress-striped .bar { background-color: #149bdf; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -webkit-background-size: 40px 40px; -moz-background-size: 40px 40px; -o-background-size: 40px 40px; background-size: 40px 40px } .progress.active .bar { -webkit-animation: progress-bar-stripes 2s linear infinite; -moz-animation: progress-bar-stripes 2s linear infinite; -ms-animation: progress-bar-stripes 2s linear infinite; -o-animation: progress-bar-stripes 2s linear infinite; animation: progress-bar-stripes 2s linear infinite } .progress-danger .bar, .progress .bar-danger { background-color: #dd514c; background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35)); background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); background-image: linear-gradient(to bottom, #ee5f5b, #c43c35); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0) } .progress-danger.progress-striped .bar, .progress-striped .bar-danger { background-color: #ee5f5b; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) } .progress-success .bar, .progress .bar-success { background-color: #5eb95e; background-image: -moz-linear-gradient(top, #62c462, #57a957); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957)); background-image: -webkit-linear-gradient(top, #62c462, #57a957); background-image: -o-linear-gradient(top, #62c462, #57a957); background-image: linear-gradient(to bottom, #62c462, #57a957); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0) } .progress-success.progress-striped .bar, .progress-striped .bar-success { background-color: #62c462; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) } .progress-info .bar, .progress .bar-info { background-color: #4bb1cf; background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9)); background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); background-image: -o-linear-gradient(top, #5bc0de, #339bb9); background-image: linear-gradient(to bottom, #5bc0de, #339bb9); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0) } .progress-info.progress-striped .bar, .progress-striped .bar-info { background-color: #5bc0de; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) } .progress-warning .bar, .progress .bar-warning { background-color: #faa732; background-image: -moz-linear-gradient(top, #fbb450, #f89406); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); background-image: -webkit-linear-gradient(top, #fbb450, #f89406); background-image: -o-linear-gradient(top, #fbb450, #f89406); background-image: linear-gradient(to bottom, #fbb450, #f89406); background-repeat: repeat-x; filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0) } .progress-warning.progress-striped .bar, .progress-striped .bar-warning { background-color: #fbb450; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) } .accordion { margin-bottom: 20px } .accordion-group { margin-bottom: 2px; border: 1px solid #e5e5e5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .accordion-heading { border-bottom: 0 } .accordion-heading .accordion-toggle { display: block; padding: 8px 15px } .accordion-toggle { cursor: pointer } .accordion-inner { padding: 9px 15px; border-top: 1px solid #e5e5e5 } .carousel { position: relative; margin-bottom: 20px; line-height: 1 } .carousel-inner { position: relative; width: 100%; overflow: hidden } .carousel-inner>.item { position: relative; display: none; -webkit-transition: .6s ease-in-out left; -moz-transition: .6s ease-in-out left; -o-transition: .6s ease-in-out left; transition: .6s ease-in-out left } .carousel-inner>.item>img { display: block; line-height: 1 } .carousel-inner>.active, .carousel-inner>.next, .carousel-inner>.prev { display: block } .carousel-inner>.active { left: 0 } .carousel-inner>.next, .carousel-inner>.prev { position: absolute; top: 0; width: 100% } .carousel-inner>.next { left: 100% } .carousel-inner>.prev { left: -100% } .carousel-inner>.next.left, .carousel-inner>.prev.right { left: 0 } .carousel-inner>.active.left { left: -100% } .carousel-inner>.active.right { left: 100% } .carousel-control { position: absolute; top: 40%; left: 15px; width: 40px; height: 40px; margin-top: -20px; font-size: 60px; font-weight: 100; line-height: 30px; color: #fff; text-align: center; background: #222; border: 3px solid #fff; -webkit-border-radius: 23px; -moz-border-radius: 23px; border-radius: 23px; opacity: .5; filter: alpha(opacity=50) } .carousel-control.right { right: 15px; left: auto } .carousel-control:hover { color: #fff; text-decoration: none; opacity: .9; filter: alpha(opacity=90) } .carousel-caption { position: absolute; right: 0; bottom: 0; left: 0; padding: 15px; background: #333; background: rgba(0, 0, 0, 0.75) } .carousel-caption h4, .carousel-caption p { line-height: 20px; color: #fff } .carousel-caption h4 { margin: 0 0 5px } .carousel-caption p { margin-bottom: 0 } .hero-unit { padding: 60px; margin-bottom: 30px; font-size: 18px; font-weight: 200; line-height: 30px; color: inherit; background-color: #eee; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px } .hero-unit h1 { margin-bottom: 0; font-size: 60px; line-height: 1; letter-spacing: -1px; color: inherit } .hero-unit li { line-height: 30px } .pull-right { float: right } .pull-left { float: left } .hide { display: none } .show { display: block } .invisible { visibility: hidden } .affix { position: fixed } /*! * Bootstrap Responsive v2.2.2 * * Copyright 2012 Twitter, Inc * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world @twitter by @mdo and @fat. */ @-ms-viewport { width: device-width } .clearfix { *zoom: 1 } .clearfix:before, .clearfix:after { display: table; line-height: 0; content: "" } .clearfix:after { clear: both } .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0 } .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .hidden { display: none; visibility: hidden } .visible-phone { display: none!important } .visible-tablet { display: none!important } .hidden-desktop { display: none!important } .visible-desktop { display: inherit!important } @media(min-width:768px) and (max-width:979px) { .hidden-desktop { display: inherit!important } .visible-desktop { display: none!important } .visible-tablet { display: inherit!important } .hidden-tablet { display: none!important } } @media(max-width:767px) { .hidden-desktop { display: inherit!important } .visible-desktop { display: none!important } .visible-phone { display: inherit!important } .hidden-phone { display: none!important } } @media(min-width:1200px) { .row { margin-left: -30px; *zoom: 1 } .row:before, .row:after { display: table; line-height: 0; content: "" } .row:after { clear: both } [class*="span"] { float: left; min-height: 1px; margin-left: 30px } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 1170px } .span12 { width: 1170px } .span11 { width: 1070px } .span10 { width: 970px } .span9 { width: 870px } .span8 { width: 770px } .span7 { width: 670px } .span6 { width: 570px } .span5 { width: 470px } .span4 { width: 370px } .span3 { width: 270px } .span2 { width: 170px } .span1 { width: 70px } .offset12 { margin-left: 1230px } .offset11 { margin-left: 1130px } .offset10 { margin-left: 1030px } .offset9 { margin-left: 930px } .offset8 { margin-left: 830px } .offset7 { margin-left: 730px } .offset6 { margin-left: 630px } .offset5 { margin-left: 530px } .offset4 { margin-left: 430px } .offset3 { margin-left: 330px } .offset2 { margin-left: 230px } .offset1 { margin-left: 130px } .row-fluid { width: 100%; *zoom: 1 } .row-fluid:before, .row-fluid:after { display: table; line-height: 0; content: "" } .row-fluid:after { clear: both } .row-fluid [class*="span"] { display: block; float: left; width: 100%; min-height: 30px; margin-left: 2.564102564102564%; *margin-left: 2.5109110747408616%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .row-fluid [class*="span"]:first-child { margin-left: 0 } .row-fluid .controls-row [class*="span"]+[class*="span"] { margin-left: 2.564102564102564% } .row-fluid .span12 { width: 100%; *width: 99.94680851063829% } .row-fluid .span11 { width: 91.45299145299145%; *width: 91.39979996362975% } .row-fluid .span10 { width: 82.90598290598291%; *width: 82.8527914166212% } .row-fluid .span9 { width: 74.35897435897436%; *width: 74.30578286961266% } .row-fluid .span8 { width: 65.81196581196582%; *width: 65.75877432260411% } .row-fluid .span7 { width: 57.26495726495726%; *width: 57.21176577559556% } .row-fluid .span6 { width: 48.717948717948715%; *width: 48.664757228587014% } .row-fluid .span5 { width: 40.17094017094017%; *width: 40.11774868157847% } .row-fluid .span4 { width: 31.623931623931625%; *width: 31.570740134569924% } .row-fluid .span3 { width: 23.076923076923077%; *width: 23.023731587561375% } .row-fluid .span2 { width: 14.52991452991453%; *width: 14.476723040552828% } .row-fluid .span1 { width: 5.982905982905983%; *width: 5.929714493544281% } .row-fluid .offset12 { margin-left: 105.12820512820512%; *margin-left: 105.02182214948171% } .row-fluid .offset12:first-child { margin-left: 102.56410256410257%; *margin-left: 102.45771958537915% } .row-fluid .offset11 { margin-left: 96.58119658119658%; *margin-left: 96.47481360247316% } .row-fluid .offset11:first-child { margin-left: 94.01709401709402%; *margin-left: 93.91071103837061% } .row-fluid .offset10 { margin-left: 88.03418803418803%; *margin-left: 87.92780505546462% } .row-fluid .offset10:first-child { margin-left: 85.47008547008548%; *margin-left: 85.36370249136206% } .row-fluid .offset9 { margin-left: 79.48717948717949%; *margin-left: 79.38079650845607% } .row-fluid .offset9:first-child { margin-left: 76.92307692307693%; *margin-left: 76.81669394435352% } .row-fluid .offset8 { margin-left: 70.94017094017094%; *margin-left: 70.83378796144753% } .row-fluid .offset8:first-child { margin-left: 68.37606837606839%; *margin-left: 68.26968539734497% } .row-fluid .offset7 { margin-left: 62.393162393162385%; *margin-left: 62.28677941443899% } .row-fluid .offset7:first-child { margin-left: 59.82905982905982%; *margin-left: 59.72267685033642% } .row-fluid .offset6 { margin-left: 53.84615384615384%; *margin-left: 53.739770867430444% } .row-fluid .offset6:first-child { margin-left: 51.28205128205128%; *margin-left: 51.175668303327875% } .row-fluid .offset5 { margin-left: 45.299145299145295%; *margin-left: 45.1927623204219% } .row-fluid .offset5:first-child { margin-left: 42.73504273504273%; *margin-left: 42.62865975631933% } .row-fluid .offset4 { margin-left: 36.75213675213675%; *margin-left: 36.645753773413354% } .row-fluid .offset4:first-child { margin-left: 34.18803418803419%; *margin-left: 34.081651209310785% } .row-fluid .offset3 { margin-left: 28.205128205128204%; *margin-left: 28.0987452264048% } .row-fluid .offset3:first-child { margin-left: 25.641025641025642%; *margin-left: 25.53464266230224% } .row-fluid .offset2 { margin-left: 19.65811965811966%; *margin-left: 19.551736679396257% } .row-fluid .offset2:first-child { margin-left: 17.094017094017094%; *margin-left: 16.98763411529369% } .row-fluid .offset1 { margin-left: 11.11111111111111%; *margin-left: 11.004728132387708% } .row-fluid .offset1:first-child { margin-left: 8.547008547008547%; *margin-left: 8.440625568285142% } input, textarea, .uneditable-input { margin-left: 0 } .controls-row [class*="span"]+[class*="span"] { margin-left: 30px } input.span12, textarea.span12, .uneditable-input.span12 { width: 1156px } input.span11, textarea.span11, .uneditable-input.span11 { width: 1056px } input.span10, textarea.span10, .uneditable-input.span10 { width: 956px } input.span9, textarea.span9, .uneditable-input.span9 { width: 856px } input.span8, textarea.span8, .uneditable-input.span8 { width: 756px } input.span7, textarea.span7, .uneditable-input.span7 { width: 656px } input.span6, textarea.span6, .uneditable-input.span6 { width: 556px } input.span5, textarea.span5, .uneditable-input.span5 { width: 456px } input.span4, textarea.span4, .uneditable-input.span4 { width: 356px } input.span3, textarea.span3, .uneditable-input.span3 { width: 256px } input.span2, textarea.span2, .uneditable-input.span2 { width: 156px } input.span1, textarea.span1, .uneditable-input.span1 { width: 56px } .thumbnails { margin-left: -30px } .thumbnails>li { margin-left: 30px } .row-fluid .thumbnails { margin-left: 0 } } @media(min-width:768px) and (max-width:979px) { .row { margin-left: -20px; *zoom: 1 } .row:before, .row:after { display: table; line-height: 0; content: "" } .row:after { clear: both } [class*="span"] { float: left; min-height: 1px; margin-left: 20px } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 724px } .span12 { width: 724px } .span11 { width: 662px } .span10 { width: 600px } .span9 { width: 538px } .span8 { width: 476px } .span7 { width: 414px } .span6 { width: 352px } .span5 { width: 290px } .span4 { width: 228px } .span3 { width: 166px } .span2 { width: 104px } .span1 { width: 42px } .offset12 { margin-left: 764px } .offset11 { margin-left: 702px } .offset10 { margin-left: 640px } .offset9 { margin-left: 578px } .offset8 { margin-left: 516px } .offset7 { margin-left: 454px } .offset6 { margin-left: 392px } .offset5 { margin-left: 330px } .offset4 { margin-left: 268px } .offset3 { margin-left: 206px } .offset2 { margin-left: 144px } .offset1 { margin-left: 82px } .row-fluid { width: 100%; *zoom: 1 } .row-fluid:before, .row-fluid:after { display: table; line-height: 0; content: "" } .row-fluid:after { clear: both } .row-fluid [class*="span"] { display: block; float: left; width: 100%; min-height: 30px; margin-left: 2.7624309392265194%; *margin-left: 2.709239449864817%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .row-fluid [class*="span"]:first-child { margin-left: 0 } .row-fluid .controls-row [class*="span"]+[class*="span"] { margin-left: 2.7624309392265194% } .row-fluid .span12 { width: 100%; *width: 99.94680851063829% } .row-fluid .span11 { width: 91.43646408839778%; *width: 91.38327259903608% } .row-fluid .span10 { width: 82.87292817679558%; *width: 82.81973668743387% } .row-fluid .span9 { width: 74.30939226519337%; *width: 74.25620077583166% } .row-fluid .span8 { width: 65.74585635359117%; *width: 65.69266486422946% } .row-fluid .span7 { width: 57.18232044198895%; *width: 57.12912895262725% } .row-fluid .span6 { width: 48.61878453038674%; *width: 48.56559304102504% } .row-fluid .span5 { width: 40.05524861878453%; *width: 40.00205712942283% } .row-fluid .span4 { width: 31.491712707182323%; *width: 31.43852121782062% } .row-fluid .span3 { width: 22.92817679558011%; *width: 22.87498530621841% } .row-fluid .span2 { width: 14.3646408839779%; *width: 14.311449394616199% } .row-fluid .span1 { width: 5.801104972375691%; *width: 5.747913483013988% } .row-fluid .offset12 { margin-left: 105.52486187845304%; *margin-left: 105.41847889972962% } .row-fluid .offset12:first-child { margin-left: 102.76243093922652%; *margin-left: 102.6560479605031% } .row-fluid .offset11 { margin-left: 96.96132596685082%; *margin-left: 96.8549429881274% } .row-fluid .offset11:first-child { margin-left: 94.1988950276243%; *margin-left: 94.09251204890089% } .row-fluid .offset10 { margin-left: 88.39779005524862%; *margin-left: 88.2914070765252% } .row-fluid .offset10:first-child { margin-left: 85.6353591160221%; *margin-left: 85.52897613729868% } .row-fluid .offset9 { margin-left: 79.8342541436464%; *margin-left: 79.72787116492299% } .row-fluid .offset9:first-child { margin-left: 77.07182320441989%; *margin-left: 76.96544022569647% } .row-fluid .offset8 { margin-left: 71.2707182320442%; *margin-left: 71.16433525332079% } .row-fluid .offset8:first-child { margin-left: 68.50828729281768%; *margin-left: 68.40190431409427% } .row-fluid .offset7 { margin-left: 62.70718232044199%; *margin-left: 62.600799341718584% } .row-fluid .offset7:first-child { margin-left: 59.94475138121547%; *margin-left: 59.838368402492065% } .row-fluid .offset6 { margin-left: 54.14364640883978%; *margin-left: 54.037263430116376% } .row-fluid .offset6:first-child { margin-left: 51.38121546961326%; *margin-left: 51.27483249088986% } .row-fluid .offset5 { margin-left: 45.58011049723757%; *margin-left: 45.47372751851417% } .row-fluid .offset5:first-child { margin-left: 42.81767955801105%; *margin-left: 42.71129657928765% } .row-fluid .offset4 { margin-left: 37.01657458563536%; *margin-left: 36.91019160691196% } .row-fluid .offset4:first-child { margin-left: 34.25414364640884%; *margin-left: 34.14776066768544% } .row-fluid .offset3 { margin-left: 28.45303867403315%; *margin-left: 28.346655695309746% } .row-fluid .offset3:first-child { margin-left: 25.69060773480663%; *margin-left: 25.584224756083227% } .row-fluid .offset2 { margin-left: 19.88950276243094%; *margin-left: 19.783119783707537% } .row-fluid .offset2:first-child { margin-left: 17.12707182320442%; *margin-left: 17.02068884448102% } .row-fluid .offset1 { margin-left: 11.32596685082873%; *margin-left: 11.219583872105325% } .row-fluid .offset1:first-child { margin-left: 8.56353591160221%; *margin-left: 8.457152932878806% } input, textarea, .uneditable-input { margin-left: 0 } .controls-row [class*="span"]+[class*="span"] { margin-left: 20px } input.span12, textarea.span12, .uneditable-input.span12 { width: 710px } input.span11, textarea.span11, .uneditable-input.span11 { width: 648px } input.span10, textarea.span10, .uneditable-input.span10 { width: 586px } input.span9, textarea.span9, .uneditable-input.span9 { width: 524px } input.span8, textarea.span8, .uneditable-input.span8 { width: 462px } input.span7, textarea.span7, .uneditable-input.span7 { width: 400px } input.span6, textarea.span6, .uneditable-input.span6 { width: 338px } input.span5, textarea.span5, .uneditable-input.span5 { width: 276px } input.span4, textarea.span4, .uneditable-input.span4 { width: 214px } input.span3, textarea.span3, .uneditable-input.span3 { width: 152px } input.span2, textarea.span2, .uneditable-input.span2 { width: 90px } input.span1, textarea.span1, .uneditable-input.span1 { width: 28px } } @media(max-width:767px) { body { padding-right: 20px; padding-left: 20px } .navbar-fixed-top, .navbar-fixed-bottom, .navbar-static-top { margin-right: -20px; margin-left: -20px } .container-fluid { padding: 0 } .dl-horizontal dt { float: none; width: auto; clear: none; text-align: left } .dl-horizontal dd { margin-left: 0 } .container { width: auto } .row-fluid { width: 100% } .row, .thumbnails { margin-left: 0 } .thumbnails>li { float: none; margin-left: 0 } [class*="span"], .uneditable-input[class*="span"], .row-fluid [class*="span"] { display: block; float: none; width: 100%; margin-left: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .span12, .row-fluid .span12 { width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .row-fluid [class*="offset"]:first-child { margin-left: 0 } .input-large, .input-xlarge, .input-xxlarge, input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box } .input-prepend input, .input-append input, .input-prepend input[class*="span"], .input-append input[class*="span"] { display: inline-block; width: auto } .controls-row [class*="span"]+[class*="span"] { margin-left: 0 } .modal { position: fixed; top: 20px; right: 20px; left: 20px; width: auto; margin: 0 } .modal.fade { top: -100px } .modal.fade.in { top: 20px } } @media(max-width:480px) { .nav-collapse { -webkit-transform: translate3d(0, 0, 0) } .page-header h1 small { display: block; line-height: 20px } input[type="checkbox"], input[type="radio"] { border: 1px solid #ccc } .form-horizontal .control-label { float: none; width: auto; padding-top: 0; text-align: left } .form-horizontal .controls { margin-left: 0 } .form-horizontal .control-list { padding-top: 0 } .form-horizontal .form-actions { padding-right: 10px; padding-left: 10px } .media .pull-left, .media .pull-right { display: block; float: none; margin-bottom: 10px } .media-object { margin-right: 0; margin-left: 0 } .modal { top: 10px; right: 10px; left: 10px } .modal-header .close { padding: 10px; margin: -10px } .carousel-caption { position: static } } @media(max-width:979px) { body { padding-top: 0 } .navbar-fixed-top, .navbar-fixed-bottom { position: static } .navbar-fixed-top { margin-bottom: 20px } .navbar-fixed-bottom { margin-top: 20px } .navbar-fixed-top .navbar-inner, .navbar-fixed-bottom .navbar-inner { padding: 5px } .navbar .container { width: auto; padding: 0 } .navbar .brand { padding-right: 10px; padding-left: 10px; margin: 0 0 0 -5px } .nav-collapse { clear: both } .nav-collapse .nav { float: none; margin: 0 0 10px } .nav-collapse .nav>li { float: none } .nav-collapse .nav>li>a { margin-bottom: 2px } .nav-collapse .nav>.divider-vertical { display: none } .nav-collapse .nav .nav-header { color: #777; text-shadow: none } .nav-collapse .nav>li>a, .nav-collapse .dropdown-menu a { padding: 9px 15px; font-weight: bold; color: #777; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px } .nav-collapse .btn { padding: 4px 10px 4px; font-weight: normal; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px } .nav-collapse .dropdown-menu li+li a { margin-bottom: 2px } .nav-collapse .nav>li>a:hover, .nav-collapse .dropdown-menu a:hover { background-color: #f2f2f2 } .navbar-inverse .nav-collapse .nav>li>a, .navbar-inverse .nav-collapse .dropdown-menu a { color: #999 } .navbar-inverse .nav-collapse .nav>li>a:hover, .navbar-inverse .nav-collapse .dropdown-menu a:hover { background-color: #111 } .nav-collapse.in .btn-group { padding: 0; margin-top: 5px } .nav-collapse .dropdown-menu { position: static; top: auto; left: auto; display: none; float: none; max-width: none; padding: 0; margin: 0 15px; background-color: transparent; border: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none } .nav-collapse .open>.dropdown-menu { display: block } .nav-collapse .dropdown-menu:before, .nav-collapse .dropdown-menu:after { display: none } .nav-collapse .dropdown-menu .divider { display: none } .nav-collapse .nav>li>.dropdown-menu:before, .nav-collapse .nav>li>.dropdown-menu:after { display: none } .nav-collapse .navbar-form, .nav-collapse .navbar-search { float: none; padding: 10px 15px; margin: 10px 0; border-top: 1px solid #f2f2f2; border-bottom: 1px solid #f2f2f2; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1) } .navbar-inverse .nav-collapse .navbar-form, .navbar-inverse .nav-collapse .navbar-search { border-top-color: #111; border-bottom-color: #111 } .navbar .nav-collapse .nav.pull-right { float: none; margin-left: 0 } .nav-collapse, .nav-collapse.collapse { height: 0; overflow: hidden } .navbar .btn-navbar { display: block } .navbar-static .navbar-inner { padding-right: 10px; padding-left: 10px } } @media(min-width:980px) { .nav-collapse.collapse { height: auto!important; overflow: visible!important } }
<pre name="code" class="html">bootstrap.js
/*! * Bootstrap.js by @fat & @mdo * Copyright 2012 Twitter, Inc. * http://www.apache.org/licenses/LICENSE-2.0.txt */ ! function($) { "use strict"; $(function() { $.support.transition = function() { var transitionEnd = function() { var name, el = document.createElement("bootstrap"), transEndEventNames = { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend" }; for (name in transEndEventNames) if (void 0 !== el.style[name]) return transEndEventNames[name] }(); return transitionEnd && { end: transitionEnd } }() }) }(window.jQuery), ! function($) { "use strict"; var dismiss = '[data-dismiss="alert"]', Alert = function(el) { $(el).on("click", dismiss, this.close) }; Alert.prototype.close = function(e) { function removeElement() { $parent.trigger("closed").remove() } var $parent, $this = $(this), selector = $this.attr("data-target"); selector || (selector = $this.attr("href"), selector = selector && selector.replace(/.*(?=#[^\s]*$)/, "")), $parent = $(selector), e && e.preventDefault(), $parent.length || ($parent = $this.hasClass("alert") ? $this : $this.parent()), $parent.trigger(e = $.Event("close")), e.isDefaultPrevented() || ($parent.removeClass("in"), $.support.transition && $parent.hasClass("fade") ? $parent.on($.support.transition.end, removeElement) : removeElement()) }; var old = $.fn.alert; $.fn.alert = function(option) { return this.each(function() { var $this = $(this), data = $this.data("alert"); data || $this.data("alert", data = new Alert(this)), "string" == typeof option && data[option].call($this) }) }, $.fn.alert.Constructor = Alert, $.fn.alert.noConflict = function() { return $.fn.alert = old, this }, $(document).on("click.alert.data-api", dismiss, Alert.prototype.close) }(window.jQuery), ! function($) { "use strict"; var Button = function(element, options) { this.$element = $(element), this.options = $.extend({}, $.fn.button.defaults, options) }; Button.prototype.setState = function(state) { var d = "disabled", $el = this.$element, data = $el.data(), val = $el.is("input") ? "val" : "html"; state += "Text", data.resetText || $el.data("resetText", $el[val]()), $el[val](data[state] || this.options[state]), setTimeout(function() { "loadingText" == state ? $el.addClass(d).attr(d, d) : $el.removeClass(d).removeAttr(d) }, 0) }, Button.prototype.toggle = function() { var $parent = this.$element.closest('[data-toggle="buttons-radio"]'); $parent && $parent.find(".active").removeClass("active"), this.$element.toggleClass("active") }; var old = $.fn.button; $.fn.button = function(option) { return this.each(function() { var $this = $(this), data = $this.data("button"), options = "object" == typeof option && option; data || $this.data("button", data = new Button(this, options)), "toggle" == option ? data.toggle() : option && data.setState(option) }) }, $.fn.button.defaults = { loadingText: "loading..." }, $.fn.button.Constructor = Button, $.fn.button.noConflict = function() { return $.fn.button = old, this }, $(document).on("click.button.data-api", "[data-toggle^=button]", function(e) { var $btn = $(e.target); $btn.hasClass("btn") || ($btn = $btn.closest(".btn")), $btn.button("toggle") }) }(window.jQuery), ! function($) { "use strict"; var Carousel = function(element, options) { this.$element = $(element), this.options = options, "hover" == this.options.pause && this.$element.on("mouseenter", $.proxy(this.pause, this)).on("mouseleave", $.proxy(this.cycle, this)) }; Carousel.prototype = { cycle: function(e) { return e || (this.paused = !1), this.options.interval && !this.paused && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)), this }, to: function(pos) { var $active = this.$element.find(".item.active"), children = $active.parent().children(), activePos = children.index($active), that = this; if (!(pos > children.length - 1 || 0 > pos)) return this.sliding ? this.$element.one("slid", function() { that.to(pos) }) : activePos == pos ? this.pause().cycle() : this.slide(pos > activePos ? "next" : "prev", $(children[pos])) }, pause: function(e) { return e || (this.paused = !0), this.$element.find(".next, .prev").length && $.support.transition.end && (this.$element.trigger($.support.transition.end), this.cycle()), clearInterval(this.interval), this.interval = null, this }, next: function() { return this.sliding ? void 0 : this.slide("next") }, prev: function() { return this.sliding ? void 0 : this.slide("prev") }, slide: function(type, next) { var e, $active = this.$element.find(".item.active"), $next = next || $active[type](), isCycling = this.interval, direction = "next" == type ? "left" : "right", fallback = "next" == type ? "first" : "last", that = this; if (this.sliding = !0, isCycling && this.pause(), $next = $next.length ? $next : this.$element.find(".item")[fallback](), e = $.Event("slide", { relatedTarget: $next[0] }), !$next.hasClass("active")) { if ($.support.transition && this.$element.hasClass("slide")) { if (this.$element.trigger(e), e.isDefaultPrevented()) return; $next.addClass(type), $next[0].offsetWidth, $active.addClass(direction), $next.addClass(direction), this.$element.one($.support.transition.end, function() { $next.removeClass([type, direction].join(" ")).addClass("active"), $active.removeClass(["active", direction].join(" ")), that.sliding = !1, setTimeout(function() { that.$element.trigger("slid") }, 0) }) } else { if (this.$element.trigger(e), e.isDefaultPrevented()) return; $active.removeClass("active"), $next.addClass("active"), this.sliding = !1, this.$element.trigger("slid") } return isCycling && this.cycle(), this } } }; var old = $.fn.carousel; $.fn.carousel = function(option) { return this.each(function() { var $this = $(this), data = $this.data("carousel"), options = $.extend({}, $.fn.carousel.defaults, "object" == typeof option && option), action = "string" == typeof option ? option : options.slide; data || $this.data("carousel", data = new Carousel(this, options)), "number" == typeof option ? data.to(option) : action ? data[action]() : options.interval && data.cycle() }) }, $.fn.carousel.defaults = { interval: 5e3, pause: "hover" }, $.fn.carousel.Constructor = Carousel, $.fn.carousel.noConflict = function() { return $.fn.carousel = old, this }, $(document).on("click.carousel.data-api", "[data-slide]", function(e) { var href, $this = $(this), $target = $($this.attr("data-target") || (href = $this.attr("href")) && href.replace(/.*(?=#[^\s]+$)/, "")), options = $.extend({}, $target.data(), $this.data()); $target.carousel(options), e.preventDefault() }) }(window.jQuery), ! function($) { "use strict"; var Collapse = function(element, options) { this.$element = $(element), this.options = $.extend({}, $.fn.collapse.defaults, options), this.options.parent && (this.$parent = $(this.options.parent)), this.options.toggle && this.toggle() }; Collapse.prototype = { constructor: Collapse, dimension: function() { var hasWidth = this.$element.hasClass("width"); return hasWidth ? "width" : "height" }, show: function() { var dimension, scroll, actives, hasData; if (!this.transitioning) { if (dimension = this.dimension(), scroll = $.camelCase(["scroll", dimension].join("-")), actives = this.$parent && this.$parent.find("> .accordion-group > .in"), actives && actives.length) { if (hasData = actives.data("collapse"), hasData && hasData.transitioning) return; actives.collapse("hide"), hasData || actives.data("collapse", null) } this.$element[dimension](0), this.transition("addClass", $.Event("show"), "shown"), $.support.transition && this.$element[dimension](this.$element[0][scroll]) } }, hide: function() { var dimension; this.transitioning || (dimension = this.dimension(), this.reset(this.$element[dimension]()), this.transition("removeClass", $.Event("hide"), "hidden"), this.$element[dimension](0)) }, reset: function(size) { var dimension = this.dimension(); return this.$element.removeClass("collapse")[dimension](size || "auto")[0].offsetWidth, this.$element[null !== size ? "addClass" : "removeClass"]("collapse"), this }, transition: function(method, startEvent, completeEvent) { var that = this, complete = function() { "show" == startEvent.type && that.reset(), that.transitioning = 0, that.$element.trigger(completeEvent) }; this.$element.trigger(startEvent), startEvent.isDefaultPrevented() || (this.transitioning = 1, this.$element[method]("in"), $.support.transition && this.$element.hasClass("collapse") ? this.$element.one($.support.transition.end, complete) : complete()) }, toggle: function() { this[this.$element.hasClass("in") ? "hide" : "show"]() } }; var old = $.fn.collapse; $.fn.collapse = function(option) { return this.each(function() { var $this = $(this), data = $this.data("collapse"), options = "object" == typeof option && option; data || $this.data("collapse", data = new Collapse(this, options)), "string" == typeof option && data[option]() }) }, $.fn.collapse.defaults = { toggle: !0 }, $.fn.collapse.Constructor = Collapse, $.fn.collapse.noConflict = function() { return $.fn.collapse = old, this }, $(document).on("click.collapse.data-api", "[data-toggle=collapse]", function(e) { var href, $this = $(this), target = $this.attr("data-target") || e.preventDefault() || (href = $this.attr("href")) && href.replace(/.*(?=#[^\s]+$)/, ""), option = $(target).data("collapse") ? "toggle" : $this.data(); $this[$(target).hasClass("in") ? "addClass" : "removeClass"]("collapsed"), $(target).collapse(option) }) }(window.jQuery), ! function($) { "use strict"; function clearMenus() { $(toggle).each(function() { getParent($(this)).removeClass("open") }) } function getParent($this) { var $parent, selector = $this.attr("data-target"); return selector || (selector = $this.attr("href"), selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, "")), $parent = $(selector), $parent.length || ($parent = $this.parent()), $parent } var toggle = "[data-toggle=dropdown]", Dropdown = function(element) { var $el = $(element).on("click.dropdown.data-api", this.toggle); $("html").on("click.dropdown.data-api", function() { $el.parent().removeClass("open") }) }; Dropdown.prototype = { constructor: Dropdown, toggle: function() { var $parent, isActive, $this = $(this); if (!$this.is(".disabled, :disabled")) return $parent = getParent($this), isActive = $parent.hasClass("open"), clearMenus(), isActive || $parent.toggleClass("open"), $this.focus(), !1 }, keydown: function(e) { var $this, $items, $parent, isActive, index; if (/(38|40|27)/.test(e.keyCode) && ($this = $(this), e.preventDefault(), e.stopPropagation(), !$this.is(".disabled, :disabled"))) { if ($parent = getParent($this), isActive = $parent.hasClass("open"), !isActive || isActive && 27 == e.keyCode) return $this.click(); $items = $("[role=menu] li:not(.divider):visible a", $parent), $items.length && (index = $items.index($items.filter(":focus")), 38 == e.keyCode && index > 0 && index--, 40 == e.keyCode && $items.length - 1 > index && index++, ~index || (index = 0), $items.eq(index).focus()) } } }; var old = $.fn.dropdown; $.fn.dropdown = function(option) { return this.each(function() { var $this = $(this), data = $this.data("dropdown"); data || $this.data("dropdown", data = new Dropdown(this)), "string" == typeof option && data[option].call($this) }) }, $.fn.dropdown.Constructor = Dropdown, $.fn.dropdown.noConflict = function() { return $.fn.dropdown = old, this }, $(document).on("click.dropdown.data-api touchstart.dropdown.data-api", clearMenus).on("click.dropdown touchstart.dropdown.data-api", ".dropdown form", function(e) { e.stopPropagation() }).on("touchstart.dropdown.data-api", ".dropdown-menu", function(e) { e.stopPropagation() }).on("click.dropdown.data-api touchstart.dropdown.data-api", toggle, Dropdown.prototype.toggle).on("keydown.dropdown.data-api touchstart.dropdown.data-api", toggle + ", [role=menu]", Dropdown.prototype.keydown) }(window.jQuery), ! function($) { "use strict"; var Modal = function(element, options) { this.options = options, this.$element = $(element).delegate('[data-dismiss="modal"]', "click.dismiss.modal", $.proxy(this.hide, this)), this.options.remote && this.$element.find(".modal-body").load(this.options.remote) }; Modal.prototype = { constructor: Modal, toggle: function() { return this[this.isShown ? "hide" : "show"]() }, show: function() { var that = this, e = $.Event("show"); this.$element.trigger(e), this.isShown || e.isDefaultPrevented() || (this.isShown = !0, this.escape(), this.backdrop(function() { var transition = $.support.transition && that.$element.hasClass("fade"); that.$element.parent().length || that.$element.appendTo(document.body), that.$element.show(), transition && that.$element[0].offsetWidth, that.$element.addClass("in").attr("aria-hidden", !1), that.enforceFocus(), transition ? that.$element.one($.support.transition.end, function() { that.$element.focus().trigger("shown") }) : that.$element.focus().trigger("shown") })) }, hide: function(e) { e && e.preventDefault(), e = $.Event("hide"), this.$element.trigger(e), this.isShown && !e.isDefaultPrevented() && (this.isShown = !1, this.escape(), $(document).off("focusin.modal"), this.$element.removeClass("in").attr("aria-hidden", !0), $.support.transition && this.$element.hasClass("fade") ? this.hideWithTransition() : this.hideModal()) }, enforceFocus: function() { var that = this; $(document).on("focusin.modal", function(e) { that.$element[0] === e.target || that.$element.has(e.target).length || that.$element.focus() }) }, escape: function() { var that = this; this.isShown && this.options.keyboard ? this.$element.on("keyup.dismiss.modal", function(e) { 27 == e.which && that.hide() }) : this.isShown || this.$element.off("keyup.dismiss.modal") }, hideWithTransition: function() { var that = this, timeout = setTimeout(function() { that.$element.off($.support.transition.end), that.hideModal() }, 500); this.$element.one($.support.transition.end, function() { clearTimeout(timeout), that.hideModal() }) }, hideModal: function() { this.$element.hide().trigger("hidden"), this.backdrop() }, removeBackdrop: function() { this.$backdrop.remove(), this.$backdrop = null }, backdrop: function(callback) { var animate = this.$element.hasClass("fade") ? "fade" : ""; if (this.isShown && this.options.backdrop) { var doAnimate = $.support.transition && animate; this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />').appendTo(document.body), this.$backdrop.click("static" == this.options.backdrop ? $.proxy(this.$element[0].focus, this.$element[0]) : $.proxy(this.hide, this)), doAnimate && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), doAnimate ? this.$backdrop.one($.support.transition.end, callback) : callback() } else !this.isShown && this.$backdrop ? (this.$backdrop.removeClass("in"), $.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one($.support.transition.end, $.proxy(this.removeBackdrop, this)) : this.removeBackdrop()) : callback && callback() } }; var old = $.fn.modal; $.fn.modal = function(option) { return this.each(function() { var $this = $(this), data = $this.data("modal"), options = $.extend({}, $.fn.modal.defaults, $this.data(), "object" == typeof option && option); data || $this.data("modal", data = new Modal(this, options)), "string" == typeof option ? data[option]() : options.show && data.show() }) }, $.fn.modal.defaults = { backdrop: !0, keyboard: !0, show: !0 }, $.fn.modal.Constructor = Modal, $.fn.modal.noConflict = function() { return $.fn.modal = old, this }, $(document).on("click.modal.data-api", '[data-toggle="modal"]', function(e) { var $this = $(this), href = $this.attr("href"), $target = $($this.attr("data-target") || href && href.replace(/.*(?=#[^\s]+$)/, "")), option = $target.data("modal") ? "toggle" : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()); e.preventDefault(), $target.modal(option).one("hide", function() { $this.focus() }) }) }(window.jQuery), ! function($) { "use strict"; var Tooltip = function(element, options) { this.init("tooltip", element, options) }; Tooltip.prototype = { constructor: Tooltip, init: function(type, element, options) { var eventIn, eventOut; this.type = type, this.$element = $(element), this.options = this.getOptions(options), this.enabled = !0, "click" == this.options.trigger ? this.$element.on("click." + this.type, this.options.selector, $.proxy(this.toggle, this)) : "manual" != this.options.trigger && (eventIn = "hover" == this.options.trigger ? "mouseenter" : "focus", eventOut = "hover" == this.options.trigger ? "mouseleave" : "blur", this.$element.on(eventIn + "." + this.type, this.options.selector, $.proxy(this.enter, this)), this.$element.on(eventOut + "." + this.type, this.options.selector, $.proxy(this.leave, this))), this.options.selector ? this._options = $.extend({}, this.options, { trigger: "manual", selector: "" }) : this.fixTitle() }, getOptions: function(options) { return options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data()), options.delay && "number" == typeof options.delay && (options.delay = { show: options.delay, hide: options.delay }), options }, enter: function(e) { var self = $(e.currentTarget)[this.type](this._options).data(this.type); return self.options.delay && self.options.delay.show ? (clearTimeout(this.timeout), self.hoverState = "in", this.timeout = setTimeout(function() { "in" == self.hoverState && self.show() }, self.options.delay.show), void 0) : self.show() }, leave: function(e) { var self = $(e.currentTarget)[this.type](this._options).data(this.type); return this.timeout && clearTimeout(this.timeout), self.options.delay && self.options.delay.hide ? (self.hoverState = "out", this.timeout = setTimeout(function() { "out" == self.hoverState && self.hide() }, self.options.delay.hide), void 0) : self.hide() }, show: function() { var $tip, inside, pos, actualWidth, actualHeight, placement, tp; if (this.hasContent() && this.enabled) { switch ($tip = this.tip(), this.setContent(), this.options.animation && $tip.addClass("fade"), placement = "function" == typeof this.options.placement ? this.options.placement.call(this, $tip[0], this.$element[0]) : this.options.placement, inside = /in/.test(placement), $tip.detach().css({ top: 0, left: 0, display: "block" }).insertAfter(this.$element), pos = this.getPosition(inside), actualWidth = $tip[0].offsetWidth, actualHeight = $tip[0].offsetHeight, inside ? placement.split(" ")[1] : placement) { case "bottom": tp = { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 }; break; case "top": tp = { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 }; break; case "left": tp = { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth }; break; case "right": tp = { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } } $tip.offset(tp).addClass(placement).addClass("in") } }, setContent: function() { var $tip = this.tip(), title = this.getTitle(); $tip.find(".tooltip-inner")[this.options.html ? "html" : "text"](title), $tip.removeClass("fade in top bottom left right") }, hide: function() { function removeWithAnimation() { var timeout = setTimeout(function() { $tip.off($.support.transition.end).detach() }, 500); $tip.one($.support.transition.end, function() { clearTimeout(timeout), $tip.detach() }) } var $tip = this.tip(); return $tip.removeClass("in"), $.support.transition && this.$tip.hasClass("fade") ? removeWithAnimation() : $tip.detach(), this }, fixTitle: function() { var $e = this.$element; ($e.attr("title") || "string" != typeof $e.attr("data-original-title")) && $e.attr("data-original-title", $e.attr("title") || "").removeAttr("title") }, hasContent: function() { return this.getTitle() }, getPosition: function(inside) { return $.extend({}, inside ? { top: 0, left: 0 } : this.$element.offset(), { width: this.$element[0].offsetWidth, height: this.$element[0].offsetHeight }) }, getTitle: function() { var title, $e = this.$element, o = this.options; return title = $e.attr("data-original-title") || ("function" == typeof o.title ? o.title.call($e[0]) : o.title) }, tip: function() { return this.$tip = this.$tip || $(this.options.template) }, validate: function() { this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null) }, enable: function() { this.enabled = !0 }, disable: function() { this.enabled = !1 }, toggleEnabled: function() { this.enabled = !this.enabled }, toggle: function(e) { var self = $(e.currentTarget)[this.type](this._options).data(this.type); self[self.tip().hasClass("in") ? "hide" : "show"]() }, destroy: function() { this.hide().$element.off("." + this.type).removeData(this.type) } }; var old = $.fn.tooltip; $.fn.tooltip = function(option) { return this.each(function() { var $this = $(this), data = $this.data("tooltip"), options = "object" == typeof option && option; data || $this.data("tooltip", data = new Tooltip(this, options)), "string" == typeof option && data[option]() }) }, $.fn.tooltip.Constructor = Tooltip, $.fn.tooltip.defaults = { animation: !0, placement: "top", selector: !1, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', trigger: "hover", title: "", delay: 0, html: !1 }, $.fn.tooltip.noConflict = function() { return $.fn.tooltip = old, this } }(window.jQuery), ! function($) { "use strict"; var Popover = function(element, options) { this.init("popover", element, options) }; Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, { constructor: Popover, setContent: function() { var $tip = this.tip(), title = this.getTitle(), content = this.getContent(); $tip.find(".popover-title")[this.options.html ? "html" : "text"](title), $tip.find(".popover-content")[this.options.html ? "html" : "text"](content), $tip.removeClass("fade top bottom left right in") }, hasContent: function() { return this.getTitle() || this.getContent() }, getContent: function() { var content, $e = this.$element, o = this.options; return content = $e.attr("data-content") || ("function" == typeof o.content ? o.content.call($e[0]) : o.content) }, tip: function() { return this.$tip || (this.$tip = $(this.options.template)), this.$tip }, destroy: function() { this.hide().$element.off("." + this.type).removeData(this.type) } }); var old = $.fn.popover; $.fn.popover = function(option) { return this.each(function() { var $this = $(this), data = $this.data("popover"), options = "object" == typeof option && option; data || $this.data("popover", data = new Popover(this, options)), "string" == typeof option && data[option]() }) }, $.fn.popover.Constructor = Popover, $.fn.popover.defaults = $.extend({}, $.fn.tooltip.defaults, { placement: "right", trigger: "click", content: "", template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"></div></div></div>' }), $.fn.popover.noConflict = function() { return $.fn.popover = old, this } }(window.jQuery), ! function($) { "use strict"; function ScrollSpy(element, options) { var href, process = $.proxy(this.process, this), $element = $(element).is("body") ? $(window) : $(element); this.options = $.extend({}, $.fn.scrollspy.defaults, options), this.$scrollElement = $element.on("scroll.scroll-spy.data-api", process), this.selector = (this.options.target || (href = $(element).attr("href")) && href.replace(/.*(?=#[^\s]+$)/, "") || "") + " .nav li > a", this.$body = $("body"), this.refresh(), this.process() } ScrollSpy.prototype = { constructor: ScrollSpy, refresh: function() { var $targets, self = this; this.offsets = $([]), this.targets = $([]), $targets = this.$body.find(this.selector).map(function() { var $el = $(this), href = $el.data("target") || $el.attr("href"), $href = /^#\w/.test(href) && $(href); return $href && $href.length && [ [$href.position().top + self.$scrollElement.scrollTop(), href] ] || null }).sort(function(a, b) { return a[0] - b[0] }).each(function() { self.offsets.push(this[0]), self.targets.push(this[1]) }) }, process: function() { var i, scrollTop = this.$scrollElement.scrollTop() + this.options.offset, scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight, maxScroll = scrollHeight - this.$scrollElement.height(), offsets = this.offsets, targets = this.targets, activeTarget = this.activeTarget; if (scrollTop >= maxScroll) return activeTarget != (i = targets.last()[0]) && this.activate(i); for (i = offsets.length; i--;) activeTarget != targets[i] && scrollTop >= offsets[i] && (!offsets[i + 1] || offsets[i + 1] >= scrollTop) && this.activate(targets[i]) }, activate: function(target) { var active, selector; this.activeTarget = target, $(this.selector).parent(".active").removeClass("active"), selector = this.selector + '[data-target="' + target + '"],' + this.selector + '[href="' + target + '"]', active = $(selector).parent("li").addClass("active"), active.parent(".dropdown-menu").length && (active = active.closest("li.dropdown").addClass("active")), active.trigger("activate") } }; var old = $.fn.scrollspy; $.fn.scrollspy = function(option) { return this.each(function() { var $this = $(this), data = $this.data("scrollspy"), options = "object" == typeof option && option; data || $this.data("scrollspy", data = new ScrollSpy(this, options)), "string" == typeof option && data[option]() }) }, $.fn.scrollspy.Constructor = ScrollSpy, $.fn.scrollspy.defaults = { offset: 10 }, $.fn.scrollspy.noConflict = function() { return $.fn.scrollspy = old, this }, $(window).on("load", function() { $('[data-spy="scroll"]').each(function() { var $spy = $(this); $spy.scrollspy($spy.data()) }) }) }(window.jQuery), ! function($) { "use strict"; var Tab = function(element) { this.element = $(element) }; Tab.prototype = { constructor: Tab, show: function() { var previous, $target, e, $this = this.element, $ul = $this.closest("ul:not(.dropdown-menu)"), selector = $this.attr("data-target"); selector || (selector = $this.attr("href"), selector = selector && selector.replace(/.*(?=#[^\s]*$)/, "")), $this.parent("li").hasClass("active") || (previous = $ul.find(".active:last a")[0], e = $.Event("show", { relatedTarget: previous }), $this.trigger(e), e.isDefaultPrevented() || ($target = $(selector), this.activate($this.parent("li"), $ul), this.activate($target, $target.parent(), function() { $this.trigger({ type: "shown", relatedTarget: previous }) }))) }, activate: function(element, container, callback) { function next() { $active.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"), element.addClass("active"), transition ? (element[0].offsetWidth, element.addClass("in")) : element.removeClass("fade"), element.parent(".dropdown-menu") && element.closest("li.dropdown").addClass("active"), callback && callback() } var $active = container.find("> .active"), transition = callback && $.support.transition && $active.hasClass("fade"); transition ? $active.one($.support.transition.end, next) : next(), $active.removeClass("in") } }; var old = $.fn.tab; $.fn.tab = function(option) { return this.each(function() { var $this = $(this), data = $this.data("tab"); data || $this.data("tab", data = new Tab(this)), "string" == typeof option && data[option]() }) }, $.fn.tab.Constructor = Tab, $.fn.tab.noConflict = function() { return $.fn.tab = old, this }, $(document).on("click.tab.data-api", '[data-toggle="tab"], [data-toggle="pill"]', function(e) { e.preventDefault(), $(this).tab("show") }) }(window.jQuery), ! function($) { "use strict"; var Typeahead = function(element, options) { this.$element = $(element), this.options = $.extend({}, $.fn.typeahead.defaults, options), this.matcher = this.options.matcher || this.matcher, this.sorter = this.options.sorter || this.sorter, this.highlighter = this.options.highlighter || this.highlighter, this.updater = this.options.updater || this.updater, this.source = this.options.source, this.$menu = $(this.options.menu), this.shown = !1, this.listen() }; Typeahead.prototype = { constructor: Typeahead, select: function() { var val = this.$menu.find(".active").attr("data-value"); return this.$element.val(this.updater(val)).change(), this.hide() }, updater: function(item) { return item }, show: function() { var pos = $.extend({}, this.$element.position(), { height: this.$element[0].offsetHeight }); return this.$menu.insertAfter(this.$element).css({ top: pos.top + pos.height, left: pos.left }).show(), this.shown = !0, this }, hide: function() { return this.$menu.hide(), this.shown = !1, this }, lookup: function() { var items; return this.query = this.$element.val(), !this.query || this.query.length < this.options.minLength ? this.shown ? this.hide() : this : (items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source, items ? this.process(items) : this) }, process: function(items) { var that = this; return items = $.grep(items, function(item) { return that.matcher(item) }), items = this.sorter(items), items.length ? this.render(items.slice(0, this.options.items)).show() : this.shown ? this.hide() : this }, matcher: function(item) { return ~item.toLowerCase().indexOf(this.query.toLowerCase()) }, sorter: function(items) { for (var item, beginswith = [], caseSensitive = [], caseInsensitive = []; item = items.shift();) item.toLowerCase().indexOf(this.query.toLowerCase()) ? ~item.indexOf(this.query) ? caseSensitive.push(item) : caseInsensitive.push(item) : beginswith.push(item); return beginswith.concat(caseSensitive, caseInsensitive) }, highlighter: function(item) { var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&"); return item.replace(RegExp("(" + query + ")", "ig"), function($1, match) { return "<strong>" + match + "</strong>" }) }, render: function(items) { var that = this; return items = $(items).map(function(i, item) { return i = $(that.options.item).attr("data-value", item), i.find("a").html(that.highlighter(item)), i[0] }), items.first().addClass("active"), this.$menu.html(items), this }, next: function() { var active = this.$menu.find(".active").removeClass("active"), next = active.next(); next.length || (next = $(this.$menu.find("li")[0])), next.addClass("active") }, prev: function() { var active = this.$menu.find(".active").removeClass("active"), prev = active.prev(); prev.length || (prev = this.$menu.find("li").last()), prev.addClass("active") }, listen: function() { this.$element.on("blur", $.proxy(this.blur, this)).on("keypress", $.proxy(this.keypress, this)).on("keyup", $.proxy(this.keyup, this)), this.eventSupported("keydown") && this.$element.on("keydown", $.proxy(this.keydown, this)), this.$menu.on("click", $.proxy(this.click, this)).on("mouseenter", "li", $.proxy(this.mouseenter, this)) }, eventSupported: function(eventName) { var isSupported = eventName in this.$element; return isSupported || (this.$element.setAttribute(eventName, "return;"), isSupported = "function" == typeof this.$element[eventName]), isSupported }, move: function(e) { if (this.shown) { switch (e.keyCode) { case 9: case 13: case 27: e.preventDefault(); break; case 38: e.preventDefault(), this.prev(); break; case 40: e.preventDefault(), this.next() } e.stopPropagation() } }, keydown: function(e) { this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40, 38, 9, 13, 27]), this.move(e) }, keypress: function(e) { this.suppressKeyPressRepeat || this.move(e) }, keyup: function(e) { switch (e.keyCode) { case 40: case 38: case 16: case 17: case 18: break; case 9: case 13: if (!this.shown) return; this.select(); break; case 27: if (!this.shown) return; this.hide(); break; default: this.lookup() } e.stopPropagation(), e.preventDefault() }, blur: function() { var that = this; setTimeout(function() { that.hide() }, 150) }, click: function(e) { e.stopPropagation(), e.preventDefault(), this.select() }, mouseenter: function(e) { this.$menu.find(".active").removeClass("active"), $(e.currentTarget).addClass("active") } }; var old = $.fn.typeahead; $.fn.typeahead = function(option) { return this.each(function() { var $this = $(this), data = $this.data("typeahead"), options = "object" == typeof option && option; data || $this.data("typeahead", data = new Typeahead(this, options)), "string" == typeof option && data[option]() }) }, $.fn.typeahead.defaults = { source: [], items: 8, menu: '<ul class="typeahead dropdown-menu"></ul>', item: '<li><a href="#"></a></li>', minLength: 1 }, $.fn.typeahead.Constructor = Typeahead, $.fn.typeahead.noConflict = function() { return $.fn.typeahead = old, this }, $(document).on("focus.typeahead.data-api", '[data-provide="typeahead"]', function(e) { var $this = $(this); $this.data("typeahead") || (e.preventDefault(), $this.typeahead($this.data())) }) }(window.jQuery), ! function($) { "use strict"; var Affix = function(element, options) { this.options = $.extend({}, $.fn.affix.defaults, options), this.$window = $(window).on("scroll.affix.data-api", $.proxy(this.checkPosition, this)).on("click.affix.data-api", $.proxy(function() { setTimeout($.proxy(this.checkPosition, this), 1) }, this)), this.$element = $(element), this.checkPosition() }; Affix.prototype.checkPosition = function() { if (this.$element.is(":visible")) { var affix, scrollHeight = $(document).height(), scrollTop = this.$window.scrollTop(), position = this.$element.offset(), offset = this.options.offset, offsetBottom = offset.bottom, offsetTop = offset.top, reset = "affix affix-top affix-bottom"; "object" != typeof offset && (offsetBottom = offsetTop = offset), "function" == typeof offsetTop && (offsetTop = offset.top()), "function" == typeof offsetBottom && (offsetBottom = offset.bottom()), affix = null != this.unpin && scrollTop + this.unpin <= position.top ? !1 : null != offsetBottom && position.top + this.$element.height() >= scrollHeight - offsetBottom ? "bottom" : null != offsetTop && offsetTop >= scrollTop ? "top" : !1, this.affixed !== affix && (this.affixed = affix, this.unpin = "bottom" == affix ? position.top - scrollTop : null, this.$element.removeClass(reset).addClass("affix" + (affix ? "-" + affix : ""))) } }; var old = $.fn.affix; $.fn.affix = function(option) { return this.each(function() { var $this = $(this), data = $this.data("affix"), options = "object" == typeof option && option; data || $this.data("affix", data = new Affix(this, options)), "string" == typeof option && data[option]() }) }, $.fn.affix.Constructor = Affix, $.fn.affix.defaults = { offset: 0 }, $.fn.affix.noConflict = function() { return $.fn.affix = old, this }, $(window).on("load", function() { $('[data-spy="affix"]').each(function() { var $spy = $(this), data = $spy.data(); data.offset = data.offset || {}, data.offsetBottom && (data.offset.bottom = data.offsetBottom), data.offsetTop && (data.offset.top = data.offsetTop), $spy.affix(data) }) }) }(window.jQuery);
更改bootstrap-datetimepicker弹出日期选择框只能在下方的限制
原文地址:http://blog.csdn.net/hyhbyl/article/details/46053979