틀:게임카드/css: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
(반응형 디자인 추가)
태그: 되돌려진 기여
잔글 (Senouis의 편집을 Hsl0의 마지막 판으로 되돌림)
태그: 일괄 되돌리기
 
(사용자 3명의 중간 판 33개는 보이지 않습니다)
1번째 줄: 1번째 줄:
<onlyinclude> {{#css:
/* 하위문서의 디자인을 담당하는 부분을 분리해둔 문서입니다. */
/* @container 폭이 350픽셀 이상일 경우 float-right 및 가로폭 50%로 조정*/
#mw-content-text:has(.gamecards) {
@container (width > 350px) {
container-type: inline-size;
.gamecard {
}
float: right;
 
width: 50%;
@container (width > 540px){
}
.gamecards{
}
    column-count: 2;
/* 게임카드 컨테이너 스타일 */
.gamecard {
border-color: hsl(320, 95%, 80%);
background: #fff;
margin: 8px;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
}
}
}
.gamecard {
border-color: hsl(320, 95%, 80%);
background: #fff;
margin: 8px 0;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
break-inside: avoid;
}
.gamecard .theme {
height: 8px;
}


/* 헤더 컬러, 일반적으로 장르를 따라감 */
.gamecard .image-wrapper img{
.gamecard .theme {
    width: 100%;
height: 8px;
    max-height: 5em;
}
    object-fit: cover;
}


/* 헤더 컬러를 제외한 나머지부분 여백 추가 */
.gamecard .content {
.gamecard .content {
padding: 8px 12px;
padding: 8px 16px;
}
}


/* 장르 단추들 하단 마진 추가 */
.gamecard .content .genres{
.gamecard .content .genres{
margin-bottom:8px;
margin-bottom:8px;
margin-left: 4px;
}
}  
.gamecard .content .genres .genre{
background: hsl(132,68%,50%);
font-size: 0.8em;
padding: 2px 6px;
border-radius: 1em;
}  


.gamecard .content .genres .genre a{
.gamecard .content .genres .genre{
color: #fff;
background: hsl(132,68%,50%);
}
font-size: 0.8em;
padding: 2px 6px;
border-radius: 1em;
white-space: nowrap;
}  


.gamecard .title {
.gamecard .content .genres .genre:not(:last-child){
font-size: 1.2em;
margin-right: 4px;
font-weight: bold;
}
margin-left: 8px;
}


.gamecard .title a {
.gamecard .content .genres .genre a{
color: #6480b6;
color: #fff;
}
}


.gamecard .summary {
.gamecard .title {
font-size: 0.8em;
font-size: 1.2em;
margin-left: 8px;
font-weight: bold;
color: #999;
}
margin-bottom: 8px;
}


.gamecard .content>.description {
.gamecard .title a {
font-size: 0.8em;
color: #6480b6;
}
}


.gamecard .icon-wrapper {
.gamecard .summary {
position: relative;
font-size: 0.8em;
user-select: none;
color: #999;
}
margin-bottom: 8px;
}


.gamecard .icon-wrapper .icon {
.gamecard .content>.description {
color: #999;
font-size: 0.8em;
transition: opacity 0.2s ease-in-out;
margin-left: 8px;
opacity: 0.5;
}
}


.gamecard .icon-wrapper:hover .icon {
.gamecard.설명감춤 .content>.description {
opacity: 1;
display:none;
}
}


.gamecard .icon-wrapper .description {
.gamecard .icon-wrapper {
visibility: hidden;
position: relative;
position: absolute;
user-select: none;
bottom: 0;
}
right: 0;
text-wrap: nowrap;
transition: opacity 0.2s ease-in-out;
opacity: 0;
background: #000;
color: #fff;
padding: 2px 6px;
font-size: 0.8em;
transform: translateY(100%);
}


.gamecard .icon-wrapper:hover .description {
.gamecard .icon-wrapper .icon {
visibility: visible;
    color: #777;
opacity: 0.6;
transition: opacity 0.2s ease-in-out;
opacity: 0.5;
    font-size: 1.7em;
}


}
.gamecard .icon-wrapper .icon a{
    color: inherit;
    text-decoration: none;
}


.gamecard .badges {
.gamecard .icon-wrapper:hover .icon {
float: right;
opacity: 1;
display: flex;
}
}


.gamecard .badges>* {
.gamecard .icon-wrapper .description {
margin-left: 4px;
visibility: hidden;
}
position: absolute;
bottom: 0;
right: 0;
text-wrap: nowrap;
transition: opacity 0.2s ease-in-out;
opacity: 0;
background: #000;
color: #fff;
padding: 2px 6px;
font-size: 0.6rem;
transform: translateY(100%);
}


.gamecard .detail {
.gamecard .icon-wrapper:hover .description {
font-size: 0.8em;
visibility: visible;
margin-top: 8px;
opacity: 0.6;
display: flex;
align-items: center;
justify-content: space-between;
}


/* nth1부터 좌측 마진 왼쪽 구분자 */
}
.gamecard .author a:nth-child(n+1) {
margin-left: 4px;
}


.gamecard .author a:nth-child(n+2):before {
.gamecard .badges {
content: "•";
float: right;
margin-right: 4px;
display: flex;
}
}


.gamecard .detail .created,
.gamecard .badges>* {
.gamecard .detail .metapage {
margin-left: 4px;
float: right;
}


}
.gamecard .detail {
font-size: 0.8em;
margin-top: 8px;
display: flex;
align-items: center;
justify-content: space-between;
    line-break: anywhere; /* 이게 없으면 IP 유저 사용자 이름이 게임카드 레이아웃의 폭을 상위 엘리먼트 너머로 넓힐 가능성 있음 */
}


}}</onlyinclude>
.gamecard .detail .created{
하위문서의 디자인을 담당하는 부분을 분리해둔 문서입니다.
font-size: 0.5em;
== 도보시오 ==
    color: #999;
* [[../|하위 문서로]]
}
.gamecard .detail .author .separator{
margin:0 2px;
color: #999;
}
/*<onlyinclude>{{#css:틀:게임카드/css}}</onlyinclude>*/

2024년 9월 29일 (일) 00:44 기준 최신판

/* 하위문서의 디자인을 담당하는 부분을 분리해둔 문서입니다. */
#mw-content-text:has(.gamecards) {
	container-type: inline-size;
}

@container (width > 540px){
	.gamecards{
	    column-count: 2;
	}
}

.gamecard {
	border-color: hsl(320, 95%, 80%);
	background: #fff;
	margin: 8px 0; 
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
	break-inside: avoid;
}

.gamecard .theme {
	height: 8px;
}

.gamecard .image-wrapper img{
    width: 100%;
    max-height: 5em;
    object-fit: cover;
}

.gamecard .content {
	padding: 8px 12px;
}

.gamecard .content .genres{
	margin-bottom:8px;
	margin-left: 4px;
} 

.gamecard .content .genres .genre{
	background: hsl(132,68%,50%);
	font-size: 0.8em;
	padding: 2px 6px;
	border-radius: 1em;
	white-space: nowrap;
} 

.gamecard .content .genres .genre:not(:last-child){
	margin-right: 4px;
}

.gamecard .content .genres .genre a{
	color: #fff;
}

.gamecard .title {
	font-size: 1.2em;
	font-weight: bold;
}

.gamecard .title a {
	color: #6480b6;
}

.gamecard .summary {
	font-size: 0.8em;
	color: #999;
	margin-bottom: 8px;
}

.gamecard .content>.description {
	font-size: 0.8em;
	margin-left: 8px;
}

.gamecard.설명감춤 .content>.description {
	display:none;
}

.gamecard .icon-wrapper {
	position: relative;
	user-select: none;
}

.gamecard .icon-wrapper .icon {
    color: #777;
	transition: opacity 0.2s ease-in-out;
	opacity: 0.5;
    font-size: 1.7em;
}

.gamecard .icon-wrapper .icon a{
    color: inherit;
    text-decoration: none;
}

.gamecard .icon-wrapper:hover .icon {
	opacity: 1;
}

.gamecard .icon-wrapper .description {
	visibility: hidden;
	position: absolute;
	bottom: 0;
	right: 0;
	text-wrap: nowrap;
	transition: opacity 0.2s ease-in-out;
	opacity: 0;
	background: #000;
	color: #fff;
	padding: 2px 6px;
	font-size: 0.6rem;
	transform: translateY(100%);
}

.gamecard .icon-wrapper:hover .description {
	visibility: visible;
	opacity: 0.6;

}

.gamecard .badges {
	float: right;
	display: flex;
}

.gamecard .badges>* {
	margin-left: 4px;
}

.gamecard .detail {
	font-size: 0.8em;
	margin-top: 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
    line-break: anywhere; /* 이게 없으면 IP 유저 사용자 이름이 게임카드 레이아웃의 폭을 상위 엘리먼트 너머로 넓힐 가능성 있음 */
}

.gamecard .detail .created{
	font-size: 0.5em;
    color: #999;
}
.gamecard .detail .author .separator{
	margin:0 2px;
	color: #999;
}
/*<onlyinclude>{{#css:틀:게임카드/css}}</onlyinclude>*/