Skip to content

Commit ad8ff73

Browse files
committed
fix alignment
1 parent a51b115 commit ad8ff73

File tree

2 files changed

+128
-33
lines changed

2 files changed

+128
-33
lines changed

templates/devtest/gitea-ui.tmpl

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,80 @@
117117
<div>1y future: {{TimeSince .TimeFuture1y $.locale}}</div>
118118
</div>
119119

120+
<div>
121+
<h1>SVG alignment</h1>
122+
<div class="flex-text-block">{{svg "octicon-alert"}} {{svg "octicon-x"}} text (block)</div>
123+
<div><div class="flex-text-inline">{{svg "octicon-alert"}} {{svg "octicon-x"}} text</div> (inline)</div>
124+
<div><button class="ui red button">{{svg "octicon-alert" 24}} {{svg "octicon-x" 24}} text</button></div>
125+
<div>
126+
<div class="ui dropdown" style="border: 1px red dashed" data-tooltip-content="border for demo purpose only">
127+
<span class="text">simple</span>
128+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
129+
<div class="menu">
130+
<div class="item">item</div>
131+
</div>
132+
</div>
133+
<div class="ui button dropdown">
134+
<span class="text">button dropdown</span>
135+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
136+
<div class="menu">
137+
<div class="item">item</div>
138+
</div>
139+
</div>
140+
<div class="ui search selection dropdown">
141+
<span class="text">search ...</span>
142+
<input name="value" class="search">
143+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
144+
{{svg "octicon-x" 14 "remove icon"}}
145+
<div class="menu">
146+
<div class="item">item</div>
147+
</div>
148+
</div>
149+
<div class="ui multiple selection dropdown">
150+
<input class="hidden" value="1">
151+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
152+
{{svg "octicon-x" 14 "remove icon"}}
153+
<div class="default text">empty multiple dropdown</div>
154+
<div class="menu">
155+
<div class="item">item</div>
156+
</div>
157+
</div>
158+
<div class="ui multiple clearable search selection dropdown">
159+
<input type="hidden" value="1">
160+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
161+
{{svg "octicon-x" 14 "remove icon"}}
162+
<div class="default text">clearable search dropdown</div>
163+
<div class="menu">
164+
<div class="item" data-value="1">item</div>
165+
</div>
166+
</div>
167+
<div class="ui buttons">
168+
<button class="ui button">Button with Dropdown</button>
169+
<div class="ui floating dropdown icon button">
170+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
171+
<div class="menu">
172+
<div class="item">item</div>
173+
</div>
174+
</div>
175+
</div>
176+
</div>
177+
</div>
178+
<div>
179+
<div class="ui dropdown mini button">
180+
<span class="text">small dropdown</span>
181+
{{svg "octicon-triangle-down" 12 "dropdown icon"}}
182+
<div class="menu">
183+
<div class="item">item</div>
184+
</div>
185+
</div>
186+
<div class="ui dropdown large button">
187+
<span class="text">large dropdown</span>
188+
{{svg "octicon-triangle-down" 18 "dropdown icon"}}
189+
<div class="menu">
190+
<div class="item">item</div>
191+
</div>
192+
</div>
193+
</div>
120194
<div>
121195
<h1>ComboMarkdownEditor</h1>
122196
<div>ps: no JS code attached, so just a layout</div>

web_src/css/base.css

Lines changed: 54 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1042,10 +1042,6 @@ img.ui.avatar,
10421042
background: var(--color-active);
10431043
}
10441044

1045-
.ui.form .field > .selection.dropdown > .dropdown.icon {
1046-
height: auto;
1047-
}
1048-
10491045
.ui.loading.segment::before,
10501046
.ui.loading.form::before {
10511047
background: none;
@@ -2135,35 +2131,6 @@ table th[data-sortt-desc] .svg {
21352131
margin-left: 0.25rem;
21362132
}
21372133

2138-
.ui.dropdown .svg.dropdown.icon,
2139-
.ui.dropdown .svg.remove.icon,
2140-
.svg.dropdown.icon {
2141-
margin-top: 0 !important; /* reset the "ui.selection.dropdown > .dropdown.icon {margin-top}", for the Issue Dependencies dropdown */
2142-
margin-right: -0.5rem !important; /* fix up SVG dropdown triangles because Fomantic thinks they are icon fonts */
2143-
height: auto; /* reset the ".ui.dropdown > .dropdown.icon {height}", otherwise the icon would be too small */
2144-
}
2145-
2146-
.ui.selection.dropdown > .svg.search.icon,
2147-
.ui.selection.dropdown > .svg.delete.icon,
2148-
.ui.selection.dropdown > .svg.dropdown.icon {
2149-
top: 0 !important; /* reset the ".ui.selection.dropdown > .xxx.icon {top}" if the icon is svg instead of the fomantic icon */
2150-
}
2151-
2152-
.ui.selection.dropdown > .svg.remove.icon {
2153-
top: .5px;
2154-
right: 32px;
2155-
width: auto;
2156-
}
2157-
2158-
.ui.selection.dropdown > .svg.remove.icon:hover {
2159-
opacity: 1;
2160-
}
2161-
2162-
.ui.dropdown.no-text > .dropdown.icon {
2163-
margin-left: 0 !important;
2164-
margin-right: 0 !important;
2165-
}
2166-
21672134
.ui.dropdown .menu .item {
21682135
border-radius: 0;
21692136
}
@@ -2315,3 +2282,57 @@ table th[data-sortt-desc] .svg {
23152282
width: 15px;
23162283
height: 15px;
23172284
}
2285+
2286+
.ui.dropdown {
2287+
/* the dropdown doesn't have default line-height, use this to make the dropdown icon align with plain dropdown */
2288+
line-height: 1em;
2289+
}
2290+
2291+
.ui.ui.dropdown > .icon.icon {
2292+
/* plain dropdown and button dropdown use flex layout for icons */
2293+
position: initial;
2294+
padding: 0;
2295+
margin: 0;
2296+
height: auto;
2297+
}
2298+
2299+
.ui.ui.dropdown > .icon.icon:hover {
2300+
opacity: 1;
2301+
}
2302+
2303+
.ui.ui.button.dropdown > .icon.icon,
2304+
.ui.ui.selection.dropdown > .icon.icon {
2305+
/* selection dropdown uses absolute layout for icons */
2306+
position: absolute;
2307+
top: 50%;
2308+
transform: translateY(-50%);
2309+
}
2310+
2311+
.ui.ui.dropdown > .dropdown.icon {
2312+
right: 0.5em;
2313+
}
2314+
2315+
.ui.ui.dropdown > .remove.icon {
2316+
right: 2em; /* clear the dropdown, only used in selection dropdown, it's beside the "dropdown icon arrow" */
2317+
}
2318+
2319+
.ui.ui.buttons .floating.dropdown.icon.button {
2320+
padding-right: 1em;
2321+
}
2322+
2323+
.ui.ui.button,
2324+
.ui.ui.dropdown,
2325+
.flex-text-inline {
2326+
display: inline-flex;
2327+
align-items: center;
2328+
flex-wrap: wrap;
2329+
gap: .25rem;
2330+
vertical-align: middle;
2331+
}
2332+
2333+
.flex-text-block {
2334+
display: flex;
2335+
align-items: center;
2336+
flex-wrap: wrap;
2337+
gap: .25rem;
2338+
}

0 commit comments

Comments
 (0)