367 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			367 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /* TabContainer 
 | |
|  * 
 | |
|  * Styling TabContainer means styling the TabList and Its content container  (dijitTitlePane)
 | |
|  * 
 | |
|  * Tab List: (including 4 kinds of tab location)
 | |
|  * 		.dijitTabContainerTop-tabs     - tablist container at top
 | |
|  * 		.dijitTabContainerBottom-tabs  - tablist container at bottom
 | |
|  * 		.dijitTabContainerLeft-tabs    - tablist container at left
 | |
|  * 		.dijitTabContainerRight-tabs   - tablist container at right
 | |
|  * 
 | |
|  * Tab Strip Button:
 | |
|  * 		.dijitTabStripIcon - tab strip button icon
 | |
|  * 		.dijitTabStripMenuIcon - down arrow icon position
 | |
|  * 		.dijitTabStripSlideLeftIcon - left arrow icon position
 | |
|  * 		.dijitTabStripSlideRightIcon - right arrow icon position
 | |
|  * 
 | |
|  * 		.tabStripButtonDisabled - styles for disabled tab strip buttons
 | |
|  * 
 | |
|  * Tab Button:
 | |
|  * 		.dijitTabContainerTop-tabs .dijitTab     - styles for top tab button container
 | |
|  * 		.dijitTabContainerBottom-tabs .dijitTab  - styles for bottom tab button container
 | |
|  * 		.dijitTabContainerLeft-tabs .dijitTab    - styles for left tab button container
 | |
|  * 		.dijitTabContainerRight-tabs .dijitTab   - styles for right tab button container
 | |
|  * 
 | |
|  * 		.dijitTabContainerTop-tabs .dijitTabChecked .dijitTab
 | |
|  * 				- styles for selected status of top tab button
 | |
|  * 		same to Bottom, Left, Right Tabs
 | |
|  * 
 | |
|  * 		.dijitTabHover .dijitTab   - styles when mouse hover on tab buttons
 | |
|  * 		.dijitTabActive .dijitTab  - styles when mouse down on tab buttons
 | |
|  * 		.dijitTabChecked .dijitTab  - styles when on buttons of selected tab
 | |
|  * 
 | |
|  * 		.dijitTabCloseButton - the close action buttons lie at the right top of each tab button on closable tabs
 | |
|  * 		.dijitTabCloseButtonHover - styles when mouse hover on close action button
 | |
|  * 		.dijitTabCloseButtonActive - styles when mouse down on close action button
 | |
|  * 
 | |
|  * Tab Button: (checked status)
 | |
|  * 
 | |
|  * Tab Content Container:
 | |
|  * 		.dijitTabContainerTop-dijitContentPane
 | |
|  * 		.dijitTabContainerBottom-dijitContentPane
 | |
|  * 		.dijitTabContainerLeft-dijitContentPane
 | |
|  * 		.dijitTabContainerRight-dijitContentPane - for background and padding
 | |
|  * 
 | |
|  * Nested Tabs:
 | |
|  * 		.dijitTabContainerNested - Container for nested tabs
 | |
|  * 		.dijitTabContainerTabListNested - tab list container for nested tabs
 | |
|  */
 | |
| 
 | |
| @import "../variables";
 | |
| 
 | |
| .unselected-tab-gradient (@direction) {
 | |
|     // white line, dark line, then fade from light to dark
 | |
| 	.alpha-white-gradient (@direction, 1,0px, 1,1px, 0.1,2px, 0.6,7px, 0,100%);
 | |
| }
 | |
| .topBottom-selected-tab-gradient (@direction) {
 | |
| 	.alpha-white-gradient (@direction, 1,0px,  1,1px, 0,2px, 1,7px);	// white line, blue line, remainder white
 | |
| }
 | |
| /*** some common features ***/
 | |
| .claro .dijitTabPaneWrapper {
 | |
| 	background:@pane-background-color;
 | |
| }
 | |
| .claro .dijitTabPaneWrapper,
 | |
| .claro .dijitTabContainerTop-tabs,
 | |
| .claro .dijitTabContainerBottom-tabs,
 | |
| .claro .dijitTabContainerLeft-tabs,
 | |
| .claro .dijitTabContainerRight-tabs {
 | |
| 	/* todo: add common class name for this div */
 | |
| 	border-color: @border-color;
 | |
| }
 | |
| .claro .dijitTabCloseButton {
 | |
| 	background: url("../@{image-layout-tab-close}") no-repeat;
 | |
| 	width: 14px;
 | |
| 	height: 14px;
 | |
| 	margin-left: 5px;
 | |
| 	margin-right:-5px;
 | |
| }
 | |
| .claro .dijitTabCloseButtonHover {
 | |
| 	background-position:-14px;
 | |
| }
 | |
| .claro .dijitTabCloseButtonActive {
 | |
| 	background-position:-28px;
 | |
| }
 | |
| .claro .dijitTabSpacer {
 | |
| 	/* set the spacer invisible.  note that height:0 doesn't work on IE/quirks, it's still 10px. */
 | |
| 	display: none;
 | |
| }
 | |
| .claro .dijitTab {
 | |
| 	border: 1px solid @border-color;
 | |
| 	background-color:@unselected-background-color;
 | |
| 	.transition-property(background-color, border);
 | |
|  	.transition-duration(.35s);
 | |
| 	color:@unselected-text-color;
 | |
| }
 | |
| .claro .dijitTabHover {
 | |
| 	border-color: @hovered-border-color;
 | |
| 	background-color:@hovered-background-color;
 | |
|  	.transition-duration(.25s);
 | |
| 	color:@hovered-text-color;
 | |
| }
 | |
| .claro .dijitTabActive {
 | |
| 	border-color: @pressed-border-color;
 | |
| 	background-color:@pressed-background-color;
 | |
| 	color:@selected-text-color;
 | |
| 	.transition-duration(.1s);
 | |
| }
 | |
| .claro .dijitTabChecked {
 | |
|     // selected tab
 | |
| 	border-color: @border-color;			// don't use @selected-border-color because need to match border of TabContainer
 | |
| 	background-color: @selected-background-color;
 | |
| 	color: @selected-text-color;
 | |
| }
 | |
| .claro .dijitTabDisabled {
 | |
| 	background-color: @tab-disabled-background-color;
 | |
| }
 | |
| 
 | |
| .claro .tabStripButton {
 | |
| 	background-color: transparent;
 | |
| 	border: none;
 | |
| }
 | |
| /*** end common ***/
 | |
| 
 | |
| 
 | |
| /*************** top tab ***************/
 | |
| .claro .dijitTabContainerTop-tabs .dijitTab {
 | |
|     /* unselected (and not hovered/pressed) tab */
 | |
| 	top: 1px;	/* used for overlap */
 | |
| 	margin-right: 1px;
 | |
| 	padding:3px 6px;
 | |
| 	border-bottom-width: 0;
 | |
| 	min-width: 60px;
 | |
| 	text-align: center;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabTopUnselected.png");
 | |
| 	background-repeat: repeat-x;
 | |
| 	.unselected-tab-gradient(top);
 | |
| 
 | |
|  	.box-shadow(0 -1px 1px rgba(0, 0, 0, 0.04));
 | |
| }
 | |
| 
 | |
| .claro .dijitTabContainerTop-tabs .dijitTabChecked {
 | |
| 	/* selected tab */
 | |
| 	padding-bottom: 4px;
 | |
| 	padding-top: 9px;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabTopSelected.png");
 | |
| 	.topBottom-selected-tab-gradient (top);
 | |
| 
 | |
| 	.box-shadow(0 -1px 2px rgba(0, 0, 0, 0.05));
 | |
| }
 | |
| 
 | |
| /** end top tab **/
 | |
| 
 | |
| 
 | |
| /*************** bottom tab ***************/
 | |
| .claro .dijitTabContainerBottom-tabs .dijitTab {
 | |
| 	/* unselected (and not hovered/pressed) tab */
 | |
| 	top: -1px;	/* used for overlap */
 | |
| 	margin-right: 1px;
 | |
| 	padding:3px 6px;
 | |
| 	border-top-width: 0;
 | |
| 	min-width: 60px;
 | |
| 	text-align: center;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabBottomUnselected.png");
 | |
| 	background-repeat: repeat-x;
 | |
| 	background-position: bottom;
 | |
| 	.unselected-tab-gradient(bottom);
 | |
| 
 | |
| 	.box-shadow(0 1px 1px rgba(0, 0, 0, 0.04));
 | |
| }
 | |
| 
 | |
| /* selected tab */
 | |
| .claro .dijitTabContainerBottom-tabs .dijitTabChecked {
 | |
| 	padding-bottom: 9px;
 | |
| 	padding-top: 4px;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabBottomSelected.png");
 | |
| 	.topBottom-selected-tab-gradient (bottom);
 | |
| 
 | |
| 	.box-shadow(0 1px 2px rgba(0, 0, 0, 0.05));
 | |
| }
 | |
| /** end bottom tab **/
 | |
| 
 | |
| /*************** left tab ***************/
 | |
| .claro .dijitTabContainerLeft-tabs .dijitTab {
 | |
| 	/* unselected (and not hovered/pressed) tab */
 | |
| 	left: 1px;	/* used for overlap */
 | |
| 	margin-bottom: 1px;
 | |
| 	padding:3px 8px 4px 4px;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabLeftUnselected.png");
 | |
| 	background-repeat: repeat-y;
 | |
| 	.unselected-tab-gradient(left);
 | |
| }
 | |
| 
 | |
| /* selected tab */
 | |
| .claro .dijitTabContainerLeft-tabs .dijitTabChecked {
 | |
| 	border-right-width: 0;
 | |
| 	padding-right: 9px;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabLeftSelected.png");
 | |
| 	.alpha-white-gradient (left, 0.5,0px, 1,30px);  // 1/2 inch blue gradient, remainder white
 | |
| 
 | |
| 	.box-shadow(-1px 0 2px rgba(0, 0, 0, .05));
 | |
| }
 | |
| /** end left tab **/
 | |
| 
 | |
| /*************** right tab ***************/
 | |
| .claro .dijitTabContainerRight-tabs .dijitTab {
 | |
| 	/* unselected (and not hovered/pressed) tab */
 | |
| 	left: -1px;	/* used for overlap */
 | |
| 	margin-bottom: 1px;
 | |
| 	padding:3px 8px 4px 4px;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabRightUnselected.png");
 | |
| 	background-repeat: repeat-y;
 | |
| 	background-position: right;
 | |
| 	.unselected-tab-gradient(right);
 | |
| }
 | |
| .claro .dijitTabContainerRight-tabs .dijitTabChecked {
 | |
| 	/* selected tab */
 | |
| 	padding-left: 5px;
 | |
| 	border-left-width: 0;
 | |
| 
 | |
| 	// gradient (CSS gradient, with backup image for IE6-9)
 | |
| 	background-image: url("images/tabRightSelected.png");
 | |
| 	.alpha-white-gradient (right, 0.5,0px, 1,30px);	// 1/2 inch blue gradient, remainder white
 | |
| 
 | |
| 	.box-shadow(1px 0 2px rgba(0, 0, 0, 0.07));
 | |
| }
 | |
| /** end right tab **/
 | |
| 
 | |
| /** round corner **/
 | |
| .claro .dijitTabContainerTop-tabs .dijitTab {
 | |
| 	.border-radius(2px 2px 0 0);
 | |
| }
 | |
| .claro .dijitTabContainerBottom-tabs .dijitTab {
 | |
| 	.border-radius(0 0 2px 2px);
 | |
| }
 | |
| .claro .dijitTabContainerLeft-tabs .dijitTab {
 | |
| 	.border-radius(2px 0 0 2px);
 | |
| }
 | |
| 
 | |
| .claro .dijitTabContainerRight-tabs .dijitTab {
 | |
| 	.border-radius(0 2px 2px 0);
 | |
| }
 | |
| 
 | |
| /************ left/right scroll buttons + menu button ************/
 | |
| .claro .tabStripButton {
 | |
| 	background-color:@button-background-color;
 | |
| 	border: 1px solid @border-color;
 | |
| }
 | |
| .claro .dijitTabListContainer-top .tabStripButton {
 | |
| 	padding: 4px 3px;
 | |
| 	margin-top:7px;
 | |
| 	.alpha-white-gradient (top, 1,0px, 0.1,1px, 0.6,6px, 0,100%);	// to match unselected tab, but had to tweak numbers
 | |
| }
 | |
| .claro .dijitTabListContainer-bottom .tabStripButton {
 | |
| 	padding:4px 3px;
 | |
| 	margin-bottom:7px;
 | |
| 	.alpha-white-gradient (bottom, 1,0px, 0.1,1px, 0.6,6px, 0,100%);	// to match unselected tab, but had to tweak numbers
 | |
| }
 | |
| .claro .tabStripButtonHover {
 | |
| 	background-color:@hovered-background-color;
 | |
| }
 | |
| .claro .tabStripButtonActive {
 | |
| 	background-color:@pressed-background-color;
 | |
| }
 | |
| .claro .dijitTabStripIcon {
 | |
| 	height:15px;
 | |
| 	width:15px;
 | |
| 	margin: 0 auto;
 | |
| 	background:url("../@{image-form-button-arrows}") no-repeat -75px 50%;
 | |
| 	background-color: transparent;
 | |
| }
 | |
| .claro .dijitTabStripSlideRightIcon{
 | |
| 	background-position: -24px 50%;
 | |
| }
 | |
| .claro .dijitTabStripMenuIcon {
 | |
| 	background-position: -51px 50%;
 | |
| }
 | |
| 
 | |
| /*disabled styles for tab strip buttons*/
 | |
| .claro .dijitTabListContainer-top .tabStripButtonDisabled,
 | |
| .claro .dijitTabListContainer-bottom .tabStripButtonDisabled {
 | |
| 	background-color:@tab-disabled-background-color;
 | |
| 	border:1px solid @border-color;	/* to match border of TabContainer itself */
 | |
| }
 | |
| .claro .tabStripButtonDisabled .dijitTabStripSlideLeftIcon {
 | |
| 	background-position:-175px 50%;
 | |
| }
 | |
| .claro .tabStripButtonDisabled .dijitTabStripSlideRightIcon {
 | |
| 	background-position: -124px 50%;
 | |
| }
 | |
| .claro .tabStripButtonDisabled .dijitTabStripMenuIcon {
 | |
| 	background-position: -151px 50%;
 | |
| } 
 | |
| /* Nested Tabs */
 | |
| .claro .dijitTabContainerNested .dijitTabListWrapper {
 | |
| 	height: auto;
 | |
| }
 | |
| .claro .dijitTabContainerNested .dijitTabContainerTop-tabs {
 | |
| 	border-bottom:solid 1px @border-color;
 | |
| 	padding:2px 2px 4px;
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTab {
 | |
| 	background:rgba(255, 255, 255, 0) none repeat scroll 0 0;
 | |
| 	border: none;
 | |
| 	padding: 4px;
 | |
| 	border-color: rgba(118,157,192,0);
 | |
| 	.transition-property(background-color, border-color);
 | |
|  	.transition-duration(.3s);
 | |
| 	.border-radius(2px);
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTab {
 | |
| 	background: none;
 | |
| 	border: none;
 | |
| 	top: 0;/* to override top: 1px/-1px for normal tabs */
 | |
| 	.box-shadow(none);
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTabHover {
 | |
| 	background-color: @nestedtab-hovered-background-color;
 | |
| 	border:solid 1px @nestedtab-hovered-border-color;
 | |
| 	padding: 3px;	// 4px above padding - 1px compensation for border
 | |
| 	.transition-duration(.2s);
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTabHover .tabLabel {
 | |
| 	text-decoration: none;
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTabActive {
 | |
| 	border:solid 1px @nestedtab-selected-border-color;
 | |
| 	padding: 3px;
 | |
| 
 | |
| 	// CSS gradient with fallback to image for IE
 | |
| 	// this is in a weird place, only for active state; mailed Jason about it
 | |
| 	background: @nestedtab-selected-background-color url("images/tabNested.png") repeat-x;
 | |
| 	.alpha-white-gradient (0.61,0%, 0,17%, 0,83%, 0.61,100%);
 | |
| 
 | |
| 	.transition-duration(.1s);
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTabChecked {
 | |
| 	padding: 3px;
 | |
| 	border:solid 1px @selected-border-color;
 | |
| 	background-color:@selected-background-color;
 | |
| }
 | |
| .claro .dijitTabContainerTabListNested .dijitTabChecked .tabLabel {
 | |
| 	text-decoration: none;
 | |
| 	background-image:none;
 | |
| }
 | |
| .claro .dijitTabPaneWrapperNested {
 | |
| 	border: none;/* prevent double border */
 | |
| }
 | |
| 
 | |
| .claro .dijitTab,
 | |
| .claro .tabStripButton {
 | |
|     // IE6 can't handle background-image and background-color on same node
 | |
| 	_background-image: none !important;
 | |
| }
 |