Migrate featureinfobox to Tailwind
- migrate featureinfobox to Tailwind - migrate featureinfobox-content to Tailwind - migrate fullscreenmessage-content to Tailwind so we can delete css/fullscreenmessagebox.css The landscape-mode is somethign that Tailwind does not support AFAIK. Instead, I migrated the one css-definition that was left over but required to a tailwind-like class name `.landscape\:max-h-screen`. Note the escaped colon with is required so css supports colon based class names.
This commit is contained in:
parent
3f34e288db
commit
7a2f4fa44a
6 changed files with 10 additions and 68 deletions
|
@ -16,17 +16,17 @@ export default class ScrollableFullScreen extends UIElement {
|
|||
const returnToTheMap = Svg.back_svg().onClick(() => {
|
||||
State.state.fullScreenMessage.setData(undefined);
|
||||
State.state.selectedElement.setData(undefined);
|
||||
}).SetClass("only-on-mobile")
|
||||
.SetClass("featureinfobox-back-to-the-map")
|
||||
}).SetClass("featureinfobox-back-to-the-map only-on-mobile mb-2")
|
||||
title.SetClass("block w-full")
|
||||
const ornament = new Combine([new Ornament().SetStyle("height:5em;")]).SetClass("only-on-mobile")
|
||||
|
||||
this._component = new Combine([
|
||||
new Combine([returnToTheMap, title]).SetClass("border-b-2 border-black shadow sm:shadow-none fixed sm:relative top-0 left-0 right-0 z-50 bg-white p-2 sm:p-0 flex overflow-hidden"),
|
||||
new Combine(["<span>",content,"</span>", ornament]).SetClass("featureinfobox-content"),
|
||||
new Combine([returnToTheMap, title]).SetClass("border-b-2 border-black shadow sm:shadow-none fixed sm:relative top-0 left-0 right-0 z-50 bg-white p-2 pb-0 sm:p-0 flex overflow-hidden"),
|
||||
new Combine(["<span>", content, "</span>", ornament])
|
||||
.SetClass("block relative pt-16 sm:pt-4 w-full max-h-screen sm:max-h-65vh landscape:max-h-screen overflow-y-auto overflow-x-hidden"),
|
||||
// We add an ornament which takes around 5em. This is in order to make sure the Web UI doesn't hide
|
||||
])
|
||||
this.SetClass("featureinfobox");
|
||||
this.SetClass("block flex flex-col");
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ export default class FullScreenMessageBox extends UIElement {
|
|||
return "";
|
||||
}
|
||||
this._content = State.state.fullScreenMessage.data.content;
|
||||
return new Combine([this._content]).SetClass("fullscreenmessage-content").Render();
|
||||
return new Combine([this._content]).SetClass("block max-h-screen h-screen overflow-x-hidden overflow-y-auto bg-white p-2").Render();
|
||||
}
|
||||
|
||||
protected InnerUpdate(htmlElement: HTMLElement) {
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
.fullscreenmessage-content {
|
||||
max-height: calc(100vh);
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
background-color: var(--background-color);
|
||||
display: block;
|
||||
}
|
||||
|
||||
.fullscreenmessage-content .featureinfobox {
|
||||
padding-top: 1em;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.fullscreenmessage-content .featureinfobox-content {
|
||||
padding: 1em;
|
||||
top: var(--variable-title-height);
|
||||
max-height: calc(100vh - var(--variable-title-height)) !important;
|
||||
min-height: calc(100vh - var(--variable-title-height)) !important;
|
||||
position: absolute;
|
||||
overflow-y: auto;
|
||||
box-sizing: border-box;
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between
|
||||
}
|
||||
|
||||
.fullscreenmessage-content .featureinfobox-tail {
|
||||
/*THe ornament to give the URL bar some room...*/
|
||||
}
|
||||
|
|
@ -1,9 +1,4 @@
|
|||
|
||||
.featureinfobox {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.featureinfobox-back-to-the-map {
|
||||
padding: 0.5em;
|
||||
border-radius: 999em;
|
||||
|
@ -25,31 +20,10 @@
|
|||
stroke: var(--subtle-detail-color-contrast) !important;
|
||||
}
|
||||
|
||||
.featureinfobox-content {
|
||||
display: block;
|
||||
max-height: 75vh;
|
||||
overflow-y: auto;
|
||||
padding-top: 1em;
|
||||
width:100%;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 600px), only screen and (max-height: 600px) {
|
||||
.featureinfobox-content {
|
||||
display: block;
|
||||
max-height: unset !important;
|
||||
overflow-y: auto;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-height: 600px) and (min-width: 600px) {
|
||||
/* landscape mode: the first tagrendering of the infobox gets a special treatment and is placed on the right*/
|
||||
.featureinfobox-content {
|
||||
position: relative;
|
||||
width: 100% !important;
|
||||
max-width: unset !important;
|
||||
max-height: unset !important;
|
||||
height: 100vh;
|
||||
.landscape\:max-h-screen {
|
||||
max-height: 100vh;
|
||||
}
|
||||
|
||||
.answer {
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
<link rel="stylesheet" href="./css/openinghourstable.css"/>
|
||||
<link rel="stylesheet" href="./css/tagrendering.css"/>
|
||||
<link rel="stylesheet" href="./css/imageUploadFlow.css"/>
|
||||
<link rel="stylesheet" href="./css/fullscreenmessagebox.css"/>
|
||||
|
||||
<link href="css/ReviewElement.css" rel="stylesheet"/>
|
||||
<link rel="stylesheet" href="vendor/MarkerCluster.css"/>
|
||||
<link rel="stylesheet" href="vendor/MarkerCluster.Default.css"/>
|
||||
|
|
Loading…
Reference in a new issue