legendary-doc-site/assets/semantic-ui/definitions/views/card.less
2020-07-03 18:22:25 -05:00

978 lines
21 KiB
Text

/*!
* # Fomantic-UI - Card
* http://github.com/fomantic/Fomantic-UI/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Theme
*******************************/
@type : 'view';
@element : 'card';
@import (multiple) '../../theme.config';
/*******************************
Standard
*******************************/
/*--------------
Card
---------------*/
.ui.cards > .card,
.ui.card {
max-width: 100%;
position: relative;
display: @display;
flex-direction: column;
width: @width;
min-height: @minHeight;
background: @background;
padding: @padding;
border: @border;
border-radius: @borderRadius;
box-shadow: @boxShadow;
transition: @transition;
z-index: @zIndex;
word-wrap: break-word;
}
.ui.card {
margin: @margin;
}
.ui.cards > .card a,
.ui.card a {
cursor: pointer;
}
.ui.card:first-child {
margin-top: 0;
}
.ui.card:last-child {
margin-bottom: 0;
}
/*--------------
Cards
---------------*/
.ui.cards {
display: @groupDisplay;
margin: @groupMargin;
flex-wrap: wrap;
}
.ui.cards > .card {
display: @groupCardDisplay;
margin: @groupCardMargin;
float: @groupCardFloat;
}
/* Clearing */
.ui.cards:after,
.ui.card:after {
display: block;
content: ' ';
height: 0;
clear: both;
overflow: hidden;
visibility: hidden;
}
/* Consecutive Card Groups Preserve Row Spacing */
.ui.cards ~ .ui.cards {
margin-top: @consecutiveGroupDistance;
}
/*--------------
Rounded Edges
---------------*/
.ui.cards > .card > :first-child,
.ui.card > :first-child {
border-radius: @borderRadius @borderRadius 0 0 !important;
border-top: none !important;
}
.ui.cards > .card > :last-child,
.ui.card > :last-child {
border-radius: 0 0 @borderRadius @borderRadius !important;
}
.ui.cards > .card > :only-child,
.ui.card > :only-child {
border-radius: @borderRadius !important;
}
/*--------------
Images
---------------*/
.ui.cards > .card > .image,
.ui.card > .image {
position: relative;
display: block;
flex: 0 0 auto;
padding: @imagePadding;
background: @imageBackground;
}
.ui.cards > .card > .image > img,
.ui.card > .image > img {
display: block;
width: 100%;
height: auto;
border-radius: inherit;
}
.ui.cards > .card > .image:not(.ui) > img,
.ui.card > .image:not(.ui) > img {
border: @imageBorder;
}
/*--------------
Content
---------------*/
.ui.cards > .card > .content,
.ui.card > .content {
flex-grow: 1;
border: @contentBorder;
border-top: @contentDivider;
background: @contentBackground;
margin: @contentMargin;
padding: @contentPadding;
box-shadow: @contentBoxShadow;
font-size: @contentFontSize;
border-radius: @contentBorderRadius;
}
.ui.cards > .card > .content:after,
.ui.card > .content:after {
display: block;
content: ' ';
height: 0;
clear: both;
overflow: hidden;
visibility: hidden;
}
.ui.cards > .card > .content > .header,
.ui.card > .content > .header {
display: block;
margin: @headerMargin;
font-family: @headerFont;
color: @headerColor;
}
/* Default Header Size */
.ui.cards > .card > .content > .header:not(.ui),
.ui.card > .content > .header:not(.ui) {
font-weight: @headerFontWeight;
font-size: @headerFontSize;
margin-top: @headerLineHeightOffset;
line-height: @headerLineHeight;
}
.ui.cards > .card > .content > .meta + .description,
.ui.cards > .card > .content > .header + .description,
.ui.card > .content > .meta + .description,
.ui.card > .content > .header + .description {
margin-top: @descriptionDistance;
}
/*----------------
Floated Content
-----------------*/
.ui.cards > .card [class*="left floated"],
.ui.card [class*="left floated"] {
float: left;
}
.ui.cards > .card [class*="right floated"],
.ui.card [class*="right floated"] {
float: right;
}
/*--------------
Aligned
---------------*/
.ui.cards > .card [class*="left aligned"],
.ui.card [class*="left aligned"] {
text-align: left;
}
.ui.cards > .card [class*="center aligned"],
.ui.card [class*="center aligned"] {
text-align: center;
}
.ui.cards > .card [class*="right aligned"],
.ui.card [class*="right aligned"] {
text-align: right;
}
/*--------------
Content Image
---------------*/
.ui.cards > .card .content img,
.ui.card .content img {
display: inline-block;
vertical-align: @contentImageVerticalAlign;
width: @contentImageWidth;
}
.ui.cards > .card img.avatar,
.ui.cards > .card .avatar img,
.ui.card img.avatar,
.ui.card .avatar img {
width: @avatarSize;
height: @avatarSize;
border-radius: @avatarBorderRadius;
}
/*--------------
Description
---------------*/
.ui.cards > .card > .content > .description,
.ui.card > .content > .description {
clear: both;
color: @descriptionColor;
}
/*--------------
Paragraph
---------------*/
.ui.cards > .card > .content p,
.ui.card > .content p {
margin: 0 0 @paragraphDistance;
}
.ui.cards > .card > .content p:last-child,
.ui.card > .content p:last-child {
margin-bottom: 0;
}
/*--------------
Meta
---------------*/
.ui.cards > .card .meta,
.ui.card .meta {
font-size: @metaFontSize;
color: @metaColor;
}
.ui.cards > .card .meta *,
.ui.card .meta * {
margin-right: @metaSpacing;
}
.ui.cards > .card .meta :last-child,
.ui.card .meta :last-child {
margin-right: 0;
}
.ui.cards > .card .meta [class*="right floated"],
.ui.card .meta [class*="right floated"] {
margin-right: 0;
margin-left: @metaSpacing;
}
/*--------------
Links
---------------*/
/* Generic */
.ui.cards > .card > .content a:not(.ui),
.ui.card > .content a:not(.ui) {
color: @contentLinkColor;
transition: @contentLinkTransition;
}
.ui.cards > .card > .content a:not(.ui):hover,
.ui.card > .content a:not(.ui):hover {
color: @contentLinkHoverColor;
}
/* Header */
.ui.cards > .card > .content > a.header,
.ui.card > .content > a.header {
color: @headerLinkColor;
}
.ui.cards > .card > .content > a.header:hover,
.ui.card > .content > a.header:hover {
color: @headerLinkHoverColor;
}
/* Meta */
.ui.cards > .card .meta > a:not(.ui),
.ui.card .meta > a:not(.ui) {
color: @metaLinkColor;
}
.ui.cards > .card .meta > a:not(.ui):hover,
.ui.card .meta > a:not(.ui):hover {
color: @metaLinkHoverColor;
}
/*--------------
Buttons
---------------*/
.ui.cards > .card > .buttons,
.ui.card > .buttons,
.ui.cards > .card > .button,
.ui.card > .button {
margin: @buttonMargin;
width: @buttonWidth;
&:last-child {
margin-bottom: -@borderWidth;
}
}
/*--------------
Dimmer
---------------*/
.ui.cards > .card .dimmer,
.ui.card .dimmer {
background-color: @dimmerColor;
z-index: @dimmerZIndex;
}
/*--------------
Labels
---------------*/
/*-----Star----- */
/* Icon */
.ui.cards > .card > .content .star.icon,
.ui.card > .content .star.icon {
cursor: pointer;
opacity: @actionOpacity;
transition: @actionTransition;
}
.ui.cards > .card > .content .star.icon:hover,
.ui.card > .content .star.icon:hover {
opacity: @actionHoverOpacity;
color: @starColor;
}
.ui.cards > .card > .content .active.star.icon,
.ui.card > .content .active.star.icon {
color: @starActiveColor;
}
/*-----Like----- */
/* Icon */
.ui.cards > .card > .content .like.icon,
.ui.card > .content .like.icon {
cursor: pointer;
opacity: @actionOpacity;
transition: @actionTransition;
}
.ui.cards > .card > .content .like.icon:hover,
.ui.card > .content .like.icon:hover {
opacity: @actionHoverOpacity;
color: @likeColor;
}
.ui.cards > .card > .content .active.like.icon,
.ui.card > .content .active.like.icon {
color: @likeActiveColor;
}
/*----------------
Extra Content
-----------------*/
.ui.cards > .card > .extra,
.ui.card > .extra {
max-width: 100%;
min-height: 0 !important;
flex-grow: 0;
border-top: @extraDivider !important;
position: @extraPosition;
background: @extraBackground;
width: @extraWidth;
margin: @extraMargin;
padding: @extraPadding;
top: @extraTop;
left: @extraLeft;
color: @extraColor;
box-shadow: @extraBoxShadow;
transition: @extraTransition;
}
.ui.cards > .card > .extra a:not(.ui),
.ui.card > .extra a:not(.ui) {
color: @extraLinkColor;
}
.ui.cards > .card > .extra a:not(.ui):hover,
.ui.card > .extra a:not(.ui):hover {
color: @extraLinkHoverColor;
}
/*******************************
Variations
*******************************/
& when (@variationCardHorizontal) {
/*-------------------
Horizontal
--------------------*/
.ui.horizontal.cards > .card,
.ui.card.horizontal {
flex-direction: row;
flex-wrap: wrap;
min-width: @horizontalMinWidth;
width: @horizontalWidth;
max-width: 100%;
}
.ui.horizontal.cards > .card > .image,
.ui.card.horizontal > .image {
border-radius: @defaultBorderRadius 0 0 @defaultBorderRadius;
width: @horizontalImageWidth;
}
.ui.horizontal.cards > .card > .image > img,
.ui.card.horizontal > .image > img {
background-size: cover;
background-repeat: no-repeat;
background-position: center;
justify-content: center;
align-items: center;
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
width: 100%;
height: 100%;
border-radius: @defaultBorderRadius 0 0 @defaultBorderRadius;
}
.ui.horizontal.cards > .card > .image:last-child > img,
.ui.card.horizontal > .image:last-child > img {
border-radius: 0 @defaultBorderRadius @defaultBorderRadius 0;
}
.ui.horizontal.cards > .card > .content, .ui.horizontal.card > .content {
flex-basis: 1px;
}
.ui.horizontal.cards > .card > .extra, .ui.horizontal.card > .extra {
flex-basis: 100%;
}
}
& when (@variationCardRaised) {
/*-------------------
Raised
--------------------*/
.ui.raised.cards > .card,
.ui.raised.card {
box-shadow: @raisedShadow;
}
& when (@variationCardLink) {
.ui.raised.cards a.card:hover,
.ui.link.cards .raised.card:hover,
a.ui.raised.card:hover,
.ui.link.raised.card:hover {
box-shadow: @raisedShadowHover;
}
}
}
& when (@variationCardCentered) {
/*-------------------
Centered
--------------------*/
.ui.centered.cards {
justify-content: center;
}
.ui.centered.card {
margin-left: auto;
margin-right: auto;
}
}
& when (@variationCardFluid) {
/*-------------------
Fluid
--------------------*/
.ui.fluid.card {
width: 100%;
max-width: 9999px;
}
}
& when (@variationCardLink) {
/*-------------------
Link
--------------------*/
.ui.cards a.card,
.ui.link.cards .card,
a.ui.card,
.ui.link.card {
transform: none;
}
.ui.cards a.card:hover,
.ui.link.cards .card:not(.icon):hover,
a.ui.card:hover,
.ui.link.card:hover {
cursor: pointer;
z-index: @linkHoverZIndex;
background: @linkHoverBackground;
border: @linkHoverBorder;
box-shadow: @linkHoverBoxShadow;
transform: @linkHoverTransform;
}
}
/*-------------------
Colors
--------------------*/
each(@colors,{
@color: replace(@key,'@','');
@c: @colors[@@color][color];
@h: @colors[@@color][hover];
@l: @colors[@@color][light];
@lh: @colors[@@color][lightHover];
.ui.@{color}.cards > .card,
.ui.cards > .@{color}.card,
.ui.@{color}.card {
box-shadow:
@borderShadow,
0 @coloredShadowDistance 0 0 @c,
@shadowBoxShadow
;
&:hover {
box-shadow:
@borderShadow,
0 @coloredShadowDistance 0 0 @h,
@shadowHoverBoxShadow
;
}
}
& when (@variationCardInverted) {
.ui.inverted.@{color}.cards > .card,
.ui.inverted.cards > .@{color}.card,
.ui.inverted.@{color}.card {
box-shadow:
0 @shadowDistance 3px 0 @solidWhiteBorderColor,
0 @coloredShadowDistance 0 0 @l,
0 0 0 @borderWidth @solidWhiteBorderColor
;
&:hover {
box-shadow:
0 @shadowDistance 3px 0 @solidWhiteBorderColor,
0 @coloredShadowDistance 0 0 @lh,
0 0 0 @borderWidth @solidWhiteBorderColor
;
}
}
}
})
/*--------------
Card Count
---------------*/
.ui.one.cards {
margin-left: @oneCardOffset;
margin-right: @oneCardOffset;
}
.ui.one.cards > .card {
width: @oneCard;
}
.ui.two.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.two.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.three.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.three.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.four.cards {
margin-left: @fourCardOffset;
margin-right: @fourCardOffset;
}
.ui.four.cards > .card {
width: @fourCard;
margin-left: @fourCardSpacing;
margin-right: @fourCardSpacing;
}
.ui.five.cards {
margin-left: @fiveCardOffset;
margin-right: @fiveCardOffset;
}
.ui.five.cards > .card {
width: @fiveCard;
margin-left: @fiveCardSpacing;
margin-right: @fiveCardSpacing;
}
.ui.six.cards {
margin-left: @sixCardOffset;
margin-right: @sixCardOffset;
}
.ui.six.cards > .card {
width: @sixCard;
margin-left: @sixCardSpacing;
margin-right: @sixCardSpacing;
}
.ui.seven.cards {
margin-left: @sevenCardOffset;
margin-right: @sevenCardOffset;
}
.ui.seven.cards > .card {
width: @sevenCard;
margin-left: @sevenCardSpacing;
margin-right: @sevenCardSpacing;
}
.ui.eight.cards {
margin-left: @eightCardOffset;
margin-right: @eightCardOffset;
}
.ui.eight.cards > .card {
width: @eightCard;
margin-left: @eightCardSpacing;
margin-right: @eightCardSpacing;
font-size: 11px;
}
.ui.nine.cards {
margin-left: @nineCardOffset;
margin-right: @nineCardOffset;
}
.ui.nine.cards > .card {
width: @nineCard;
margin-left: @nineCardSpacing;
margin-right: @nineCardSpacing;
font-size: 10px;
}
.ui.ten.cards {
margin-left: @tenCardOffset;
margin-right: @tenCardOffset;
}
.ui.ten.cards > .card {
width: @tenCard;
margin-left: @tenCardSpacing;
margin-right: @tenCardSpacing;
}
& when (@variationCardDoubling) {
/*-------------------
Doubling
--------------------*/
/* Mobile Only */
@media only screen and (max-width : @largestMobileScreen) {
.ui.two.doubling.cards {
margin-left: @oneCardOffset;
margin-right: @oneCardOffset;
}
.ui.two.doubling.cards > .card {
width: @oneCard;
margin-left: @oneCardSpacing;
margin-right: @oneCardSpacing;
}
.ui.three.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.three.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.four.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.four.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.five.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.five.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.six.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.six.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.seven.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.seven.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.eight.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.eight.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.nine.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.nine.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.ten.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.ten.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
}
/* Tablet Only */
@media only screen and (min-width : @tabletBreakpoint) and (max-width : @largestTabletScreen) {
.ui.two.doubling.cards {
margin-left: @oneCardOffset;
margin-right: @oneCardOffset;
}
.ui.two.doubling.cards > .card {
width: @oneCard;
margin-left: @oneCardSpacing;
margin-right: @oneCardSpacing;
}
.ui.three.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.three.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.four.doubling.cards {
margin-left: @twoCardOffset;
margin-right: @twoCardOffset;
}
.ui.four.doubling.cards > .card {
width: @twoCard;
margin-left: @twoCardSpacing;
margin-right: @twoCardSpacing;
}
.ui.five.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.five.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.six.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.six.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.eight.doubling.cards {
margin-left: @threeCardOffset;
margin-right: @threeCardOffset;
}
.ui.eight.doubling.cards > .card {
width: @threeCard;
margin-left: @threeCardSpacing;
margin-right: @threeCardSpacing;
}
.ui.eight.doubling.cards {
margin-left: @fourCardOffset;
margin-right: @fourCardOffset;
}
.ui.eight.doubling.cards > .card {
width: @fourCard;
margin-left: @fourCardSpacing;
margin-right: @fourCardSpacing;
}
.ui.nine.doubling.cards {
margin-left: @fourCardOffset;
margin-right: @fourCardOffset;
}
.ui.nine.doubling.cards > .card {
width: @fourCard;
margin-left: @fourCardSpacing;
margin-right: @fourCardSpacing;
}
.ui.ten.doubling.cards {
margin-left: @fiveCardOffset;
margin-right: @fiveCardOffset;
}
.ui.ten.doubling.cards > .card {
width: @fiveCard;
margin-left: @fiveCardSpacing;
margin-right: @fiveCardSpacing;
}
}
}
& when (@variationCardStackable) {
/*-------------------
Stackable
--------------------*/
@media only screen and (max-width : @largestMobileScreen) {
.ui.stackable.cards {
display: block !important;
}
.ui.stackable.cards .card:first-child {
margin-top: 0 !important;
}
.ui.stackable.cards > .card {
display: block !important;
height: auto !important;
margin: @stackableRowSpacing @stackableCardSpacing;
padding: 0 !important;
width: @stackableMargin !important;
}
}
}
/*--------------
Size
---------------*/
.ui.cards > .card {
font-size: @medium;
}
& when not (@variationCardSizes = false) {
each(@variationCardSizes, {
@s: @@value;
.ui.@{value}.cards .card {
font-size: @s;
}
})
}
& when (@variationCardInverted) {
/*-----------------
Inverted
------------------*/
.ui.inverted.cards > .card,
.ui.inverted.card {
background: @invertedBackground;
box-shadow: @invertedBoxShadow;
}
/* Content */
.ui.inverted.cards > .card > .content,
.ui.inverted.card > .content {
border-top: @invertedContentDivider;
}
/* Header */
.ui.inverted.cards > .card > .content > .header,
.ui.inverted.card > .content > .header {
color: @invertedHeaderColor;
}
/* Description */
.ui.inverted.cards > .card > .content > .description,
.ui.inverted.card > .content > .description {
color: @invertedDescriptionColor;
}
/* Meta */
.ui.inverted.cards > .card .meta,
.ui.inverted.card .meta {
color: @invertedMetaColor;
}
.ui.inverted.cards > .card .meta > a:not(.ui),
.ui.inverted.card .meta > a:not(.ui) {
color: @invertedMetaLinkColor;
}
.ui.inverted.cards > .card .meta > a:not(.ui):hover,
.ui.inverted.card .meta > a:not(.ui):hover {
color: @invertedMetaLinkHoverColor;
}
/* Extra */
.ui.inverted.cards > .card > .extra,
.ui.inverted.card > .extra {
border-top: @invertedExtraDivider !important;
color: @invertedExtraColor;
}
.ui.inverted.cards > .card > .extra a:not(.ui),
.ui.inverted.card > .extra a:not(.ui) {
color: @invertedExtraLinkColor;
}
.ui.inverted.cards > .card > .extra a:not(.ui):hover,
.ui.inverted.card > .extra a:not(.ui):hover {
color: @extraLinkHoverColor;
}
/* Link card(s) */
.ui.inverted.cards a.card:hover,
.ui.inverted.link.cards .card:not(.icon):hover,
a.inverted.ui.card:hover,
.ui.inverted.link.card:hover {
background: @invertedLinkHoverBackground;
}
}
.loadUIOverrides();