Design Files
Two files are considered the default design files for a theme: design.json and design.css.
-
design.jsonspecifies styles for components -
design.cssprovides definitions for class values (such as color and font)
These files are located in the /designs/default/ directory in a theme structure.
design.json File
The design.json file has the following structure:
{
"componentStyles": {
"scs-image": {
"styles": []
},
"scs-map": {
"styles": []
},
"scs-title": {
"styles": []
},
"scs-paragraph": {
"styles": []
},
"scs-divider": {
"styles": []
},
"scs-button": {
"styles": []
},
"scs-app": {
"styles": []
},
"scs-spacer": {
},
"scs-gallery": {
"styles": []
},
"scs-youtube": {
"styles": []
},
"scs-socialbar": {
"styles": []
},
"scs-document": {
"styles": []
}
}
}
Each of the "styles":[] entries can contain a list of styles for that particular component. For example, the title component provides these default styles:
"styles": [{
"name": "COMP_STYLE_FLAT",
"class": "scs-title-default-style"
},
{
"name": "COMP_STYLE_HIGHLIGHT",
"class": "scs-title-style-2"
},
{
"name": "COMP_STYLE_DIVIDER",
"class": "scs-title-style-3"
}
]
Note:
If you create custom styles for a component and map it to styles indesign.json, you don’t need to use the full name like those provided with the system. Just specify the string you want to use. For example, instead of "COMP_STYLE_BOX" for the name, simply use "Box". This means only the name "Box" will appear in the list for the Styles tab of the Settings panel for that component, instead of "COMP_STYLE_BOX".
The name values are mapped to the actual words to display in the user interface, like this:
"COMP_STYLE_FLAT": "Flat",
"COMP_STYLE_HIGHLIGHT": "Highlight",
"COMP_STYLE_DIVIDER": "Divider",
design.css File
The design.css file provides the definitions for the class values. Here are a few examples.
.scs-title-default-style {
color: #333333;
display: block;
font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
font-size: 24px;
font-weight: normal; }
.scs-title-style-2 {
background-color: #DEF300;
color: #333333;
font-family: adobe-clean, sans-serif;
padding-top: 2em;
padding-bottom: 2em; }
.scs-button-default-style .scs-button-button:hover {
background: #f7f8f9;
border: 1px solid #c4ced7;
color: #0572ce;
box-shadow: inset 0 1px 0 #f7f8f9;
text-shadow: 0 1px 0 #f7f8f9; }
.scs-button-default-style .scs-button-button:active {
background: #0572ce;
border: 1px solid #0572ce;
color: #fff;
box-shadow: inset 0 1px 0 #0572ce;
text-shadow: 0 1px 0 #0572ce; }