image_manager.css 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. /*!
  2. * froala_editor v3.0.3 (https://www.froala.com/wysiwyg-editor)
  3. * License https://froala.com/wysiwyg-editor/terms/
  4. * Copyright 2014-2019 Froala Labs
  5. */
  6. .clearfix::after {
  7. clear: both;
  8. display: block;
  9. content: "";
  10. height: 0; }
  11. .hide-by-clipping {
  12. position: absolute;
  13. width: 1px;
  14. height: 1px;
  15. padding: 0;
  16. margin: -1px;
  17. overflow: hidden;
  18. clip: rect(0, 0, 0, 0);
  19. border: 0; }
  20. .fr-modal .fr-modal-head .fr-modal-head-line::after {
  21. clear: both;
  22. display: block;
  23. content: "";
  24. height: 0; }
  25. .fr-modal .fr-modal-head .fr-modal-head-line .fr-modal-more {
  26. margin-top: 10px; }
  27. .fr-modal .fr-modal-head .fr-modal-head-line .fr-modal-more.fr-not-available {
  28. opacity: 0;
  29. width: 0;
  30. padding: 12px 0; }
  31. .fr-modal .fr-modal-head .fr-modal-tags {
  32. padding: 0 20px;
  33. display: none;
  34. text-align: left; }
  35. .fr-modal .fr-modal-head .fr-modal-tags a {
  36. display: inline-block;
  37. opacity: 0;
  38. padding: 6px 12px;
  39. margin: 8px 0 8px 8px;
  40. text-decoration: none;
  41. border-radius: 32px;
  42. -moz-border-radius: 32px;
  43. -webkit-border-radius: 32px;
  44. -moz-background-clip: padding;
  45. -webkit-background-clip: padding-box;
  46. background-clip: padding-box;
  47. -webkit-transition: opacity 0.2s ease 0s, background 0.2s ease 0s;
  48. -moz-transition: opacity 0.2s ease 0s, background 0.2s ease 0s;
  49. -ms-transition: opacity 0.2s ease 0s, background 0.2s ease 0s;
  50. -o-transition: opacity 0.2s ease 0s, background 0.2s ease 0s;
  51. cursor: pointer;
  52. background-color: #f5f5f5; }
  53. .fr-modal .fr-modal-head .fr-modal-tags a:focus {
  54. outline: none;
  55. background-color: #ebebeb; }
  56. .fr-modal .fr-modal-head .fr-modal-tags a:hover {
  57. background-color: #ebebeb; }
  58. .fr-modal .fr-modal-head .fr-modal-tags a:active {
  59. background-color: #d6d6d6; }
  60. .fr-modal .fr-modal-head .fr-modal-tags a.fr-selected-tag {
  61. background-color: #EcF5Ff;
  62. color: #0098f7; }
  63. .fr-modal .fr-modal-head .fr-modal-tags a.fr-selected-tag:focus {
  64. outline: none;
  65. background-color: #ebebeb; }
  66. .fr-modal .fr-modal-head .fr-modal-tags a.fr-selected-tag:hover {
  67. background-color: #ebebeb; }
  68. .fr-modal .fr-modal-head .fr-modal-tags a.fr-selected-tag:active {
  69. background-color: #d6d6d6; }
  70. .fr-show-tags .fr-modal-more svg path {
  71. fill: #0098f7; }
  72. div.fr-modal-body {
  73. -webkit-transition: background 0.2s ease 0s;
  74. -moz-transition: background 0.2s ease 0s;
  75. -ms-transition: background 0.2s ease 0s;
  76. -o-transition: background 0.2s ease 0s; }
  77. div.fr-modal-body .fr-preloader {
  78. display: block;
  79. margin: 50px auto; }
  80. div.fr-modal-body div.fr-image-list {
  81. text-align: center;
  82. margin: 0 20px;
  83. padding: 0; }
  84. div.fr-modal-body div.fr-image-list .fr-list-column {
  85. float: left;
  86. width: calc((100% - 20px) / 2); }
  87. @media (min-width: 768px) and (max-width: 1199px) {
  88. div.fr-modal-body div.fr-image-list .fr-list-column {
  89. width: calc((100% - 40px) / 3); } }
  90. @media (min-width: 1200px) {
  91. div.fr-modal-body div.fr-image-list .fr-list-column {
  92. width: calc((100% - 60px) / 4); } }
  93. div.fr-modal-body div.fr-image-list .fr-list-column + .fr-list-column {
  94. margin-left: 20px; }
  95. div.fr-modal-body div.fr-image-list div.fr-image-container {
  96. position: relative;
  97. width: 100%;
  98. display: block;
  99. border-radius: 2px;
  100. -moz-border-radius: 2px;
  101. -webkit-border-radius: 2px;
  102. -moz-background-clip: padding;
  103. -webkit-background-clip: padding-box;
  104. background-clip: padding-box;
  105. overflow: hidden; }
  106. div.fr-modal-body div.fr-image-list div.fr-image-container:first-child {
  107. margin-top: 20px; }
  108. div.fr-modal-body div.fr-image-list div.fr-image-container + div {
  109. margin-top: 20px; }
  110. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-image-deleting::after {
  111. position: absolute;
  112. -webkit-opacity: 0.5;
  113. -moz-opacity: 0.5;
  114. opacity: 0.5;
  115. -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  116. -webkit-transition: opacity 0.2s ease 0s;
  117. -moz-transition: opacity 0.2s ease 0s;
  118. -ms-transition: opacity 0.2s ease 0s;
  119. -o-transition: opacity 0.2s ease 0s;
  120. background: #000;
  121. content: "";
  122. top: 0;
  123. left: 0;
  124. bottom: 0;
  125. right: 0;
  126. z-index: 2; }
  127. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-image-deleting::before {
  128. content: attr(data-deleting);
  129. color: #FFF;
  130. top: 0;
  131. left: 0;
  132. bottom: 0;
  133. right: 0;
  134. margin: auto;
  135. position: absolute;
  136. z-index: 3;
  137. font-size: 15px;
  138. height: 20px; }
  139. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-empty {
  140. height: 95px;
  141. background: #CCCCCC;
  142. z-index: 1; }
  143. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-empty::after {
  144. position: absolute;
  145. margin: auto;
  146. top: 0;
  147. bottom: 0;
  148. left: 0;
  149. right: 0;
  150. content: attr(data-loading);
  151. display: inline-block;
  152. height: 20px; }
  153. div.fr-modal-body div.fr-image-list div.fr-image-container img {
  154. width: 100%;
  155. vertical-align: middle;
  156. position: relative;
  157. z-index: 2;
  158. -webkit-opacity: 1;
  159. -moz-opacity: 1;
  160. opacity: 1;
  161. -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  162. -webkit-transition: opacity 0.2s ease 0s, filter 0.2s ease 0s;
  163. -moz-transition: opacity 0.2s ease 0s, filter 0.2s ease 0s;
  164. -ms-transition: opacity 0.2s ease 0s, filter 0.2s ease 0s;
  165. -o-transition: opacity 0.2s ease 0s, filter 0.2s ease 0s;
  166. -webkit-transform: translateZ(0);
  167. -moz-transform: translateZ(0);
  168. -ms-transform: translateZ(0);
  169. -o-transform: translateZ(0); }
  170. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-mobile-selected img {
  171. -webkit-opacity: 0.75;
  172. -moz-opacity: 0.75;
  173. opacity: 0.75;
  174. -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  175. div.fr-modal-body div.fr-image-list div.fr-image-container.fr-mobile-selected .fr-delete-img, div.fr-modal-body div.fr-image-list div.fr-image-container.fr-mobile-selected .fr-insert-img {
  176. display: inline-block; }
  177. div.fr-modal-body div.fr-image-list div.fr-image-container .fr-delete-img, div.fr-modal-body div.fr-image-list div.fr-image-container .fr-insert-img {
  178. display: none;
  179. top: 50%;
  180. border-radius: 100%;
  181. -moz-border-radius: 100%;
  182. -webkit-border-radius: 100%;
  183. -moz-background-clip: padding;
  184. -webkit-background-clip: padding-box;
  185. background-clip: padding-box;
  186. -webkit-transition: background 0.2s ease 0s, color 0.2s ease 0s;
  187. -moz-transition: background 0.2s ease 0s, color 0.2s ease 0s;
  188. -ms-transition: background 0.2s ease 0s, color 0.2s ease 0s;
  189. -o-transition: background 0.2s ease 0s, color 0.2s ease 0s;
  190. -webkit-box-sizing: border-box;
  191. -moz-box-sizing: border-box;
  192. box-sizing: border-box;
  193. position: absolute;
  194. cursor: pointer;
  195. margin: 0;
  196. line-height: 40px;
  197. text-decoration: none;
  198. z-index: 3; }
  199. div.fr-modal-body div.fr-image-list div.fr-image-container .fr-delete-img {
  200. background: #B8312F;
  201. fill: #FFF;
  202. padding: 8px;
  203. left: 50%;
  204. -webkit-transform: translateY(-50%) translateX(25%);
  205. -moz-transform: translateY(-50%) translateX(25%);
  206. -ms-transform: translateY(-50%) translateX(25%);
  207. -o-transform: translateY(-50%) translateX(25%); }
  208. div.fr-modal-body div.fr-image-list div.fr-image-container .fr-insert-img {
  209. background: #FFF;
  210. fill: #0098f7;
  211. padding: 8px;
  212. left: 50%;
  213. -webkit-transform: translateY(-50%) translateX(-125%);
  214. -moz-transform: translateY(-50%) translateX(-125%);
  215. -ms-transform: translateY(-50%) translateX(-125%);
  216. -o-transform: translateY(-50%) translateX(-125%); }
  217. .fr-desktop .fr-modal-wrapper div.fr-modal-body div.fr-image-list div.fr-image-container:hover img {
  218. -webkit-opacity: 0.75;
  219. -moz-opacity: 0.75;
  220. opacity: 0.75;
  221. -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  222. .fr-desktop .fr-modal-wrapper div.fr-modal-body div.fr-image-list div.fr-image-container:hover .fr-delete-img, .fr-desktop .fr-modal-wrapper div.fr-modal-body div.fr-image-list div.fr-image-container:hover .fr-insert-img {
  223. display: inline-block;
  224. width: 40px;
  225. height: 40px; }
  226. .fr-desktop .fr-modal-wrapper div.fr-modal-body div.fr-image-list div.fr-image-container .fr-delete-img:hover {
  227. background: #bf4644;
  228. color: #FFF; }
  229. .fr-desktop .fr-modal-wrapper div.fr-modal-body div.fr-image-list div.fr-image-container .fr-insert-img:hover {
  230. background: #ebebeb; }