Layout scaffolding for Web apps.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

84 lines
1.5 KiB

  1. import { css } from '@tesseract-design/goofy-goober';
  2. export const ContentBase = () => css.cx(
  3. css`
  4. box-sizing: border-box;
  5. `,
  6. css.media('(min-width: 1080px)')(
  7. css`
  8. padding-right: calc(50% - (var(--base-width) * 0.5));
  9. `
  10. ),
  11. );
  12. export const SidebarBase = () => css.cx(
  13. css`
  14. box-sizing: border-box;
  15. background-color: var(--color-background, white);
  16. `,
  17. // prevent collapse of margin
  18. css`
  19. &::after {
  20. content: '';
  21. display: block;
  22. padding-bottom: 1px;
  23. margin-top: -1px;
  24. box-sizing: border-box;
  25. }
  26. & > * {
  27. display: block;
  28. width: 100%;
  29. height: 100%;
  30. }
  31. `,
  32. css.media('(min-width: 1080px)')(
  33. css`
  34. position: absolute;
  35. top: 0;
  36. right: 0;
  37. width: calc(50% - var(--base-width) * 0.5);
  38. height: 100%;
  39. `,
  40. ),
  41. )
  42. export const SidebarMainContent = () => css.cx(
  43. css`
  44. position: relative;
  45. z-index: 1;
  46. `
  47. )
  48. export const SidebarMainContainer = () => css.cx(
  49. css`
  50. padding: 0 1rem;
  51. box-sizing: border-box;
  52. width: 100%;
  53. max-width: calc(var(--base-width) * 2);
  54. margin: 0 auto;
  55. `,
  56. css.media('(min-width: 1080px)')(
  57. css`
  58. margin-left: 0;
  59. width: var(--base-width);
  60. `,
  61. ),
  62. )
  63. export const ContentContainer = () => css.cx(
  64. css`
  65. padding: 0 1rem;
  66. box-sizing: border-box;
  67. width: 100%;
  68. max-width: calc(var(--base-width) * 2);
  69. margin: 0 auto;
  70. `,
  71. css.media('(min-width: 1080px)')(
  72. css`
  73. margin-right: 0;
  74. `,
  75. ),
  76. )
  77. // TODO port from original viewfinder package