compass 0.13.alpha.12 → 1.0.0.alpha.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +61 -89
  3. data/VERSION +1 -0
  4. data/features/command_line.feature +1 -1
  5. data/features/step_definitions/command_line_steps.rb +0 -2
  6. data/lib/compass.rb +21 -2
  7. data/lib/compass/commands.rb +2 -0
  8. data/lib/compass/commands/print_version.rb +1 -12
  9. data/lib/compass/compiler.rb +1 -0
  10. data/lib/compass/configuration/adapters.rb +3 -0
  11. data/lib/compass/configuration/comments.rb +4 -1
  12. data/lib/compass/configuration/helpers.rb +1 -58
  13. data/lib/compass/configuration/serialization.rb +3 -0
  14. data/lib/compass/errors.rb +1 -3
  15. data/lib/compass/frameworks.rb +26 -4
  16. data/lib/compass/sass_extensions.rb +0 -1
  17. data/lib/compass/sass_extensions/functions.rb +2 -26
  18. data/lib/compass/sass_extensions/functions/sprites.rb +23 -23
  19. data/lib/compass/sass_extensions/sprites/image.rb +24 -29
  20. data/lib/compass/sprite_importer/content.erb +1 -1
  21. data/lib/compass/util.rb +1 -1
  22. data/lib/compass/version.rb +18 -35
  23. data/test/fixtures/stylesheets/compass/css/fonts.css +2 -2
  24. data/test/fixtures/stylesheets/envtest/tmp/env.css +2 -2
  25. data/test/fixtures/stylesheets/valid/css/another_simple.css +4 -0
  26. data/test/fixtures/stylesheets/valid/css/simple.css +4 -0
  27. data/test/integrations/sprites_test.rb +86 -79
  28. data/test/test_helper.rb +7 -5
  29. data/test/units/caniuse_test.rb +4 -4
  30. data/test/units/command_line_test.rb +5 -4
  31. data/test/units/configuration_test.rb +35 -2
  32. data/test/units/sass_extensions_test.rb +2 -2
  33. data/test/units/sass_extenstions/gradients_test.rb +3 -3
  34. data/test/units/sprites/sprite_map_test.rb +5 -2
  35. metadata +21 -506
  36. data/README.markdown +0 -30
  37. data/VERSION.yml +0 -6
  38. data/data/caniuse.json +0 -1
  39. data/data/caniuse_extras/css-placeholder.json +0 -171
  40. data/examples/README.markdown +0 -4
  41. data/examples/blueprint_default/config.rb +0 -7
  42. data/examples/blueprint_default/images/grid.png +0 -0
  43. data/examples/blueprint_default/index.html.haml +0 -85
  44. data/examples/blueprint_default/parts/elements.html.haml +0 -282
  45. data/examples/blueprint_default/parts/forms.html.haml +0 -200
  46. data/examples/blueprint_default/parts/grid.html.haml +0 -274
  47. data/examples/blueprint_default/parts/test-small.jpg +0 -0
  48. data/examples/blueprint_default/parts/test.jpg +0 -0
  49. data/examples/blueprint_default/parts/valid.png +0 -0
  50. data/examples/blueprint_default/src/ie.scss +0 -3
  51. data/examples/blueprint_default/src/images/grid.png +0 -0
  52. data/examples/blueprint_default/src/print.scss +0 -3
  53. data/examples/blueprint_default/src/screen.scss +0 -9
  54. data/examples/blueprint_plugins/config.rb +0 -8
  55. data/examples/blueprint_plugins/images/buttons/cross.png +0 -0
  56. data/examples/blueprint_plugins/images/buttons/key.png +0 -0
  57. data/examples/blueprint_plugins/images/buttons/tick.png +0 -0
  58. data/examples/blueprint_plugins/images/grid.png +0 -0
  59. data/examples/blueprint_plugins/images/link_icons/doc.png +0 -0
  60. data/examples/blueprint_plugins/images/link_icons/email.png +0 -0
  61. data/examples/blueprint_plugins/images/link_icons/external.png +0 -0
  62. data/examples/blueprint_plugins/images/link_icons/feed.png +0 -0
  63. data/examples/blueprint_plugins/images/link_icons/im.png +0 -0
  64. data/examples/blueprint_plugins/images/link_icons/pdf.png +0 -0
  65. data/examples/blueprint_plugins/images/link_icons/visited.png +0 -0
  66. data/examples/blueprint_plugins/images/link_icons/xls.png +0 -0
  67. data/examples/blueprint_plugins/images/test-small.jpg +0 -0
  68. data/examples/blueprint_plugins/images/test.jpg +0 -0
  69. data/examples/blueprint_plugins/images/valid.png +0 -0
  70. data/examples/blueprint_plugins/index.html.haml +0 -96
  71. data/examples/blueprint_plugins/plugins/buttons.html.haml +0 -67
  72. data/examples/blueprint_plugins/plugins/fancy_type.html.haml +0 -100
  73. data/examples/blueprint_plugins/plugins/link_icons.html.haml +0 -61
  74. data/examples/blueprint_plugins/plugins/rtl.html.haml +0 -100
  75. data/examples/blueprint_plugins/src/buttons.scss +0 -47
  76. data/examples/blueprint_plugins/src/ie.scss +0 -3
  77. data/examples/blueprint_plugins/src/images/grid.png +0 -0
  78. data/examples/blueprint_plugins/src/link_icons.scss +0 -13
  79. data/examples/blueprint_plugins/src/print.scss +0 -3
  80. data/examples/blueprint_plugins/src/rtl_screen.scss +0 -15
  81. data/examples/blueprint_plugins/src/screen.scss +0 -12
  82. data/examples/blueprint_scoped/images/grid.png +0 -0
  83. data/examples/blueprint_scoped/src/ie.scss +0 -4
  84. data/examples/blueprint_scoped/src/print.scss +0 -4
  85. data/examples/blueprint_scoped/src/screen.scss +0 -5
  86. data/examples/blueprint_scoped_form/images/grid.png +0 -0
  87. data/examples/blueprint_scoped_form/src/ie.scss +0 -3
  88. data/examples/blueprint_scoped_form/src/print.scss +0 -3
  89. data/examples/blueprint_scoped_form/src/screen.scss +0 -15
  90. data/examples/blueprint_semantic/config.rb +0 -7
  91. data/examples/blueprint_semantic/images/grid.png +0 -0
  92. data/examples/blueprint_semantic/index.html.haml +0 -86
  93. data/examples/blueprint_semantic/parts/fancy_type.html.haml +0 -100
  94. data/examples/blueprint_semantic/parts/liquid.html.haml +0 -100
  95. data/examples/blueprint_semantic/parts/test-small.jpg +0 -0
  96. data/examples/blueprint_semantic/parts/test.jpg +0 -0
  97. data/examples/blueprint_semantic/parts/valid.png +0 -0
  98. data/examples/blueprint_semantic/src/ie.scss +0 -3
  99. data/examples/blueprint_semantic/src/images/grid.png +0 -0
  100. data/examples/blueprint_semantic/src/liquid.scss +0 -69
  101. data/examples/blueprint_semantic/src/print.scss +0 -3
  102. data/examples/blueprint_semantic/src/screen.scss +0 -69
  103. data/examples/compass/bootstrap.rb +0 -4
  104. data/examples/compass/clean.rb +0 -2
  105. data/examples/compass/compass.html.haml +0 -39
  106. data/examples/compass/config.rb +0 -8
  107. data/examples/compass/headers.txt +0 -7
  108. data/examples/compass/images/blue_arrow.gif +0 -0
  109. data/examples/compass/images/border2.png +0 -0
  110. data/examples/compass/images/emblem/favorite.png +0 -0
  111. data/examples/compass/images/emblem/important.png +0 -0
  112. data/examples/compass/images/emblem/photos.png +0 -0
  113. data/examples/compass/images/emblem/readonly.png +0 -0
  114. data/examples/compass/images/emblem/symbolic-link.png +0 -0
  115. data/examples/compass/images/emblem/system.png +0 -0
  116. data/examples/compass/images/emblem/unreadable.png +0 -0
  117. data/examples/compass/images/flag/ad.png +0 -0
  118. data/examples/compass/images/flag/ae.png +0 -0
  119. data/examples/compass/images/flag/af.png +0 -0
  120. data/examples/compass/images/flag/ag.png +0 -0
  121. data/examples/compass/images/flag/ai.png +0 -0
  122. data/examples/compass/images/flag/al.png +0 -0
  123. data/examples/compass/images/flag/am.png +0 -0
  124. data/examples/compass/images/flag/an.png +0 -0
  125. data/examples/compass/images/flag/ao.png +0 -0
  126. data/examples/compass/images/flag/ar.png +0 -0
  127. data/examples/compass/images/flag/as.png +0 -0
  128. data/examples/compass/images/flag/at.png +0 -0
  129. data/examples/compass/images/flag/au.png +0 -0
  130. data/examples/compass/images/flag/aw.png +0 -0
  131. data/examples/compass/images/flag/ax.png +0 -0
  132. data/examples/compass/images/flag/az.png +0 -0
  133. data/examples/compass/images/flag/ba.png +0 -0
  134. data/examples/compass/images/flag/bb.png +0 -0
  135. data/examples/compass/images/flag/bd.png +0 -0
  136. data/examples/compass/images/flag/be.png +0 -0
  137. data/examples/compass/images/flag/bf.png +0 -0
  138. data/examples/compass/images/flag/bg.png +0 -0
  139. data/examples/compass/images/flag/bh.png +0 -0
  140. data/examples/compass/images/flag/bi.png +0 -0
  141. data/examples/compass/images/flag/bj.png +0 -0
  142. data/examples/compass/images/flag/bm.png +0 -0
  143. data/examples/compass/images/flag/bn.png +0 -0
  144. data/examples/compass/images/flag/bo.png +0 -0
  145. data/examples/compass/images/flag/br.png +0 -0
  146. data/examples/compass/images/flag/bs.png +0 -0
  147. data/examples/compass/images/flag/bt.png +0 -0
  148. data/examples/compass/images/flag/bv.png +0 -0
  149. data/examples/compass/images/flag/bw.png +0 -0
  150. data/examples/compass/images/flag/by.png +0 -0
  151. data/examples/compass/images/flag/bz.png +0 -0
  152. data/examples/compass/images/flag/ca.png +0 -0
  153. data/examples/compass/images/flag/catalonia.png +0 -0
  154. data/examples/compass/images/flag/cc.png +0 -0
  155. data/examples/compass/images/flag/cd.png +0 -0
  156. data/examples/compass/images/flag/cf.png +0 -0
  157. data/examples/compass/images/flag/cg.png +0 -0
  158. data/examples/compass/images/flag/ch.png +0 -0
  159. data/examples/compass/images/flag/ci.png +0 -0
  160. data/examples/compass/images/flag/ck.png +0 -0
  161. data/examples/compass/images/flag/cl.png +0 -0
  162. data/examples/compass/images/flag/cm.png +0 -0
  163. data/examples/compass/images/flag/cn.png +0 -0
  164. data/examples/compass/images/flag/co.png +0 -0
  165. data/examples/compass/images/flag/cr.png +0 -0
  166. data/examples/compass/images/flag/cs.png +0 -0
  167. data/examples/compass/images/flag/cu.png +0 -0
  168. data/examples/compass/images/flag/cv.png +0 -0
  169. data/examples/compass/images/flag/cx.png +0 -0
  170. data/examples/compass/images/flag/cy.png +0 -0
  171. data/examples/compass/images/flag/cz.png +0 -0
  172. data/examples/compass/images/flag/de.png +0 -0
  173. data/examples/compass/images/flag/dj.png +0 -0
  174. data/examples/compass/images/flag/dk.png +0 -0
  175. data/examples/compass/images/flag/dm.png +0 -0
  176. data/examples/compass/images/flag/do.png +0 -0
  177. data/examples/compass/images/flag/dz.png +0 -0
  178. data/examples/compass/images/flag/ec.png +0 -0
  179. data/examples/compass/images/flag/ee.png +0 -0
  180. data/examples/compass/images/flag/eg.png +0 -0
  181. data/examples/compass/images/flag/eh.png +0 -0
  182. data/examples/compass/images/flag/england.png +0 -0
  183. data/examples/compass/images/flag/er.png +0 -0
  184. data/examples/compass/images/flag/es.png +0 -0
  185. data/examples/compass/images/flag/et.png +0 -0
  186. data/examples/compass/images/flag/europeanunion.png +0 -0
  187. data/examples/compass/images/flag/fam.png +0 -0
  188. data/examples/compass/images/flag/fi.png +0 -0
  189. data/examples/compass/images/flag/fj.png +0 -0
  190. data/examples/compass/images/flag/fk.png +0 -0
  191. data/examples/compass/images/flag/fm.png +0 -0
  192. data/examples/compass/images/flag/fo.png +0 -0
  193. data/examples/compass/images/flag/fr.png +0 -0
  194. data/examples/compass/images/flag/ga.png +0 -0
  195. data/examples/compass/images/flag/gb.png +0 -0
  196. data/examples/compass/images/flag/gd.png +0 -0
  197. data/examples/compass/images/flag/ge.png +0 -0
  198. data/examples/compass/images/flag/gf.png +0 -0
  199. data/examples/compass/images/flag/gh.png +0 -0
  200. data/examples/compass/images/flag/gi.png +0 -0
  201. data/examples/compass/images/flag/gl.png +0 -0
  202. data/examples/compass/images/flag/gm.png +0 -0
  203. data/examples/compass/images/flag/gn.png +0 -0
  204. data/examples/compass/images/flag/gp.png +0 -0
  205. data/examples/compass/images/flag/gq.png +0 -0
  206. data/examples/compass/images/flag/gr.png +0 -0
  207. data/examples/compass/images/flag/gs.png +0 -0
  208. data/examples/compass/images/flag/gt.png +0 -0
  209. data/examples/compass/images/flag/gu.png +0 -0
  210. data/examples/compass/images/flag/gw.png +0 -0
  211. data/examples/compass/images/flag/gy.png +0 -0
  212. data/examples/compass/images/flag/hk.png +0 -0
  213. data/examples/compass/images/flag/hm.png +0 -0
  214. data/examples/compass/images/flag/hn.png +0 -0
  215. data/examples/compass/images/flag/hr.png +0 -0
  216. data/examples/compass/images/flag/ht.png +0 -0
  217. data/examples/compass/images/flag/hu.png +0 -0
  218. data/examples/compass/images/flag/id-2.png +0 -0
  219. data/examples/compass/images/flag/ie.png +0 -0
  220. data/examples/compass/images/flag/il.png +0 -0
  221. data/examples/compass/images/flag/in.png +0 -0
  222. data/examples/compass/images/flag/io.png +0 -0
  223. data/examples/compass/images/flag/iq.png +0 -0
  224. data/examples/compass/images/flag/ir.png +0 -0
  225. data/examples/compass/images/flag/is.png +0 -0
  226. data/examples/compass/images/flag/it.png +0 -0
  227. data/examples/compass/images/flag/jm.png +0 -0
  228. data/examples/compass/images/flag/jo.png +0 -0
  229. data/examples/compass/images/flag/jp.png +0 -0
  230. data/examples/compass/images/flag/ke.png +0 -0
  231. data/examples/compass/images/flag/kg.png +0 -0
  232. data/examples/compass/images/flag/kh.png +0 -0
  233. data/examples/compass/images/flag/ki.png +0 -0
  234. data/examples/compass/images/flag/km.png +0 -0
  235. data/examples/compass/images/flag/kn.png +0 -0
  236. data/examples/compass/images/flag/kp.png +0 -0
  237. data/examples/compass/images/flag/kr.png +0 -0
  238. data/examples/compass/images/flag/kw.png +0 -0
  239. data/examples/compass/images/flag/ky.png +0 -0
  240. data/examples/compass/images/flag/kz.png +0 -0
  241. data/examples/compass/images/flag/la.png +0 -0
  242. data/examples/compass/images/flag/lb.png +0 -0
  243. data/examples/compass/images/flag/lc.png +0 -0
  244. data/examples/compass/images/flag/li.png +0 -0
  245. data/examples/compass/images/flag/lk.png +0 -0
  246. data/examples/compass/images/flag/lr.png +0 -0
  247. data/examples/compass/images/flag/ls.png +0 -0
  248. data/examples/compass/images/flag/lt.png +0 -0
  249. data/examples/compass/images/flag/lu.png +0 -0
  250. data/examples/compass/images/flag/lv.png +0 -0
  251. data/examples/compass/images/flag/ly.png +0 -0
  252. data/examples/compass/images/flag/ma.png +0 -0
  253. data/examples/compass/images/flag/mc.png +0 -0
  254. data/examples/compass/images/flag/md.png +0 -0
  255. data/examples/compass/images/flag/me.png +0 -0
  256. data/examples/compass/images/flag/mg.png +0 -0
  257. data/examples/compass/images/flag/mh.png +0 -0
  258. data/examples/compass/images/flag/mk.png +0 -0
  259. data/examples/compass/images/flag/ml.png +0 -0
  260. data/examples/compass/images/flag/mm.png +0 -0
  261. data/examples/compass/images/flag/mn.png +0 -0
  262. data/examples/compass/images/flag/mo.png +0 -0
  263. data/examples/compass/images/flag/mp.png +0 -0
  264. data/examples/compass/images/flag/mq.png +0 -0
  265. data/examples/compass/images/flag/mr.png +0 -0
  266. data/examples/compass/images/flag/ms.png +0 -0
  267. data/examples/compass/images/flag/mt.png +0 -0
  268. data/examples/compass/images/flag/mu.png +0 -0
  269. data/examples/compass/images/flag/mv.png +0 -0
  270. data/examples/compass/images/flag/mw.png +0 -0
  271. data/examples/compass/images/flag/mx.png +0 -0
  272. data/examples/compass/images/flag/my.png +0 -0
  273. data/examples/compass/images/flag/mz.png +0 -0
  274. data/examples/compass/images/flag/na.png +0 -0
  275. data/examples/compass/images/flag/nc.png +0 -0
  276. data/examples/compass/images/flag/ne.png +0 -0
  277. data/examples/compass/images/flag/nf.png +0 -0
  278. data/examples/compass/images/flag/ng.png +0 -0
  279. data/examples/compass/images/flag/ni.png +0 -0
  280. data/examples/compass/images/flag/nl.png +0 -0
  281. data/examples/compass/images/flag/no.png +0 -0
  282. data/examples/compass/images/flag/np.png +0 -0
  283. data/examples/compass/images/flag/nr.png +0 -0
  284. data/examples/compass/images/flag/nu.png +0 -0
  285. data/examples/compass/images/flag/nz.png +0 -0
  286. data/examples/compass/images/flag/om.png +0 -0
  287. data/examples/compass/images/flag/pa.png +0 -0
  288. data/examples/compass/images/flag/pe.png +0 -0
  289. data/examples/compass/images/flag/pf.png +0 -0
  290. data/examples/compass/images/flag/pg.png +0 -0
  291. data/examples/compass/images/flag/ph.png +0 -0
  292. data/examples/compass/images/flag/pk.png +0 -0
  293. data/examples/compass/images/flag/pl.png +0 -0
  294. data/examples/compass/images/flag/pm.png +0 -0
  295. data/examples/compass/images/flag/pn.png +0 -0
  296. data/examples/compass/images/flag/pr.png +0 -0
  297. data/examples/compass/images/flag/ps.png +0 -0
  298. data/examples/compass/images/flag/pt.png +0 -0
  299. data/examples/compass/images/flag/pw.png +0 -0
  300. data/examples/compass/images/flag/py.png +0 -0
  301. data/examples/compass/images/flag/qa.png +0 -0
  302. data/examples/compass/images/flag/re.png +0 -0
  303. data/examples/compass/images/flag/ro.png +0 -0
  304. data/examples/compass/images/flag/rs.png +0 -0
  305. data/examples/compass/images/flag/ru.png +0 -0
  306. data/examples/compass/images/flag/rw.png +0 -0
  307. data/examples/compass/images/flag/sa.png +0 -0
  308. data/examples/compass/images/flag/sb.png +0 -0
  309. data/examples/compass/images/flag/sc.png +0 -0
  310. data/examples/compass/images/flag/scotland.png +0 -0
  311. data/examples/compass/images/flag/sd.png +0 -0
  312. data/examples/compass/images/flag/se.png +0 -0
  313. data/examples/compass/images/flag/sg.png +0 -0
  314. data/examples/compass/images/flag/sh.png +0 -0
  315. data/examples/compass/images/flag/si.png +0 -0
  316. data/examples/compass/images/flag/sj.png +0 -0
  317. data/examples/compass/images/flag/sk.png +0 -0
  318. data/examples/compass/images/flag/sl.png +0 -0
  319. data/examples/compass/images/flag/sm.png +0 -0
  320. data/examples/compass/images/flag/sn.png +0 -0
  321. data/examples/compass/images/flag/so.png +0 -0
  322. data/examples/compass/images/flag/sr.png +0 -0
  323. data/examples/compass/images/flag/st.png +0 -0
  324. data/examples/compass/images/flag/sv.png +0 -0
  325. data/examples/compass/images/flag/sy.png +0 -0
  326. data/examples/compass/images/flag/sz.png +0 -0
  327. data/examples/compass/images/flag/tc.png +0 -0
  328. data/examples/compass/images/flag/td.png +0 -0
  329. data/examples/compass/images/flag/tf.png +0 -0
  330. data/examples/compass/images/flag/tg.png +0 -0
  331. data/examples/compass/images/flag/th.png +0 -0
  332. data/examples/compass/images/flag/tj.png +0 -0
  333. data/examples/compass/images/flag/tk.png +0 -0
  334. data/examples/compass/images/flag/tl.png +0 -0
  335. data/examples/compass/images/flag/tm.png +0 -0
  336. data/examples/compass/images/flag/tn.png +0 -0
  337. data/examples/compass/images/flag/to.png +0 -0
  338. data/examples/compass/images/flag/tr.png +0 -0
  339. data/examples/compass/images/flag/tt.png +0 -0
  340. data/examples/compass/images/flag/tv.png +0 -0
  341. data/examples/compass/images/flag/tw.png +0 -0
  342. data/examples/compass/images/flag/tz.png +0 -0
  343. data/examples/compass/images/flag/ua.png +0 -0
  344. data/examples/compass/images/flag/ug.png +0 -0
  345. data/examples/compass/images/flag/um.png +0 -0
  346. data/examples/compass/images/flag/us.png +0 -0
  347. data/examples/compass/images/flag/uy.png +0 -0
  348. data/examples/compass/images/flag/uz.png +0 -0
  349. data/examples/compass/images/flag/va.png +0 -0
  350. data/examples/compass/images/flag/vc.png +0 -0
  351. data/examples/compass/images/flag/ve.png +0 -0
  352. data/examples/compass/images/flag/vg.png +0 -0
  353. data/examples/compass/images/flag/vi.png +0 -0
  354. data/examples/compass/images/flag/vn.png +0 -0
  355. data/examples/compass/images/flag/vu.png +0 -0
  356. data/examples/compass/images/flag/wales.png +0 -0
  357. data/examples/compass/images/flag/wf.png +0 -0
  358. data/examples/compass/images/flag/ws.png +0 -0
  359. data/examples/compass/images/flag/ye.png +0 -0
  360. data/examples/compass/images/flag/yt.png +0 -0
  361. data/examples/compass/images/flag/za.png +0 -0
  362. data/examples/compass/images/flag/zm.png +0 -0
  363. data/examples/compass/images/flag/zw.png +0 -0
  364. data/examples/compass/images/icon-chrome.png +0 -0
  365. data/examples/compass/images/icon-firefox.png +0 -0
  366. data/examples/compass/images/icon-ie.png +0 -0
  367. data/examples/compass/images/icon-opera.png +0 -0
  368. data/examples/compass/images/icon-safari.png +0 -0
  369. data/examples/compass/pie.html.haml +0 -73
  370. data/examples/compass/sprites.html.haml +0 -37
  371. data/examples/compass/src/bp_layout.scss +0 -18
  372. data/examples/compass/src/compass.scss +0 -46
  373. data/examples/compass/src/images/blue_arrow.gif +0 -0
  374. data/examples/compass/src/sprites.scss +0 -25
  375. data/examples/compass/src/sticky_footer.scss +0 -11
  376. data/examples/compass/src/utilities.scss +0 -108
  377. data/examples/compass/sticky_footer.html.haml +0 -14
  378. data/examples/compass/utilities.html.haml +0 -189
  379. data/examples/css3/bootstrap.rb +0 -3
  380. data/examples/css3/clean.rb +0 -2
  381. data/examples/css3/config.rb +0 -6
  382. data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +0 -10
  383. data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +0 -6
  384. data/examples/css3/gradients.html.haml +0 -68
  385. data/examples/css3/images/button_bg.png +0 -0
  386. data/examples/css3/images/example.png +0 -0
  387. data/examples/css3/index.html.haml +0 -57
  388. data/examples/css3/src/_base.scss +0 -13
  389. data/examples/css3/src/fancy-fonts.scss +0 -13
  390. data/examples/css3/src/gradients.scss +0 -86
  391. data/examples/css3/src/main.scss +0 -108
  392. data/examples/downloader.rb +0 -58
  393. data/examples/ninesixty/bootstrap.rb +0 -4
  394. data/examples/ninesixty/clean.rb +0 -2
  395. data/examples/ninesixty/config.rb +0 -10
  396. data/examples/ninesixty/src/grid.scss +0 -15
  397. data/examples/ninesixty/src/text.scss +0 -8
  398. data/examples/susy/bootstrap.rb +0 -3
  399. data/examples/susy/clean.rb +0 -2
  400. data/examples/susy/config.rb +0 -10
  401. data/examples/susy/src/_base.scss +0 -61
  402. data/examples/susy/src/_defaults.scss +0 -140
  403. data/examples/susy/src/screen.scss +0 -100
  404. data/examples/yui/bootstrap.rb +0 -3
  405. data/examples/yui/clean.rb +0 -2
  406. data/examples/yui/config.rb +0 -1
  407. data/examples/yui/divisions.html.haml +0 -179
  408. data/examples/yui/index.html.haml +0 -19
  409. data/examples/yui/src/screen.scss +0 -13
  410. data/examples/yui/sub_divisions.html.haml +0 -169
  411. data/examples/yui/templates.html.haml +0 -54
  412. data/examples/yui/test.jpg +0 -0
  413. data/examples/yui/typography.html.haml +0 -132
  414. data/frameworks/compass/stylesheets/_compass.scss +0 -3
  415. data/frameworks/compass/stylesheets/_lemonade.scss +0 -38
  416. data/frameworks/compass/stylesheets/compass/_css3.scss +0 -21
  417. data/frameworks/compass/stylesheets/compass/_layout.scss +0 -3
  418. data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +0 -3
  419. data/frameworks/compass/stylesheets/compass/_reset.scss +0 -3
  420. data/frameworks/compass/stylesheets/compass/_support.scss +0 -432
  421. data/frameworks/compass/stylesheets/compass/_typography.scss +0 -4
  422. data/frameworks/compass/stylesheets/compass/_utilities.scss +0 -9
  423. data/frameworks/compass/stylesheets/compass/css3/_animation.scss +0 -122
  424. data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +0 -17
  425. data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +0 -35
  426. data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +0 -37
  427. data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +0 -19
  428. data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +0 -107
  429. data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +0 -88
  430. data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +0 -15
  431. data/frameworks/compass/stylesheets/compass/css3/_box.scss +0 -85
  432. data/frameworks/compass/stylesheets/compass/css3/_columns.scss +0 -210
  433. data/frameworks/compass/stylesheets/compass/css3/_deprecated-support.scss +0 -272
  434. data/frameworks/compass/stylesheets/compass/css3/_filter.scss +0 -50
  435. data/frameworks/compass/stylesheets/compass/css3/_flexbox.scss +0 -156
  436. data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +0 -48
  437. data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +0 -71
  438. data/frameworks/compass/stylesheets/compass/css3/_images.scss +0 -139
  439. data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +0 -31
  440. data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +0 -23
  441. data/frameworks/compass/stylesheets/compass/css3/_pie.scss +0 -1
  442. data/frameworks/compass/stylesheets/compass/css3/_regions.scss +0 -27
  443. data/frameworks/compass/stylesheets/compass/css3/_selection.scss +0 -59
  444. data/frameworks/compass/stylesheets/compass/css3/_shared.scss +0 -5
  445. data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +0 -82
  446. data/frameworks/compass/stylesheets/compass/css3/_transform.scss +0 -590
  447. data/frameworks/compass/stylesheets/compass/css3/_transition.scss +0 -171
  448. data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +0 -71
  449. data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +0 -178
  450. data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +0 -23
  451. data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +0 -24
  452. data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +0 -135
  453. data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +0 -142
  454. data/frameworks/compass/stylesheets/compass/typography/_links.scss +0 -3
  455. data/frameworks/compass/stylesheets/compass/typography/_lists.scss +0 -4
  456. data/frameworks/compass/stylesheets/compass/typography/_text.scss +0 -4
  457. data/frameworks/compass/stylesheets/compass/typography/_units.scss +0 -152
  458. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +0 -300
  459. data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +0 -5
  460. data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +0 -28
  461. data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +0 -7
  462. data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +0 -34
  463. data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +0 -63
  464. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +0 -50
  465. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +0 -47
  466. data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +0 -25
  467. data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +0 -12
  468. data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +0 -2
  469. data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +0 -68
  470. data/frameworks/compass/stylesheets/compass/utilities/_color.scss +0 -1
  471. data/frameworks/compass/stylesheets/compass/utilities/_general.scss +0 -6
  472. data/frameworks/compass/stylesheets/compass/utilities/_links.scss +0 -5
  473. data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +0 -6
  474. data/frameworks/compass/stylesheets/compass/utilities/_print.scss +0 -17
  475. data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +0 -2
  476. data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +0 -3
  477. data/frameworks/compass/stylesheets/compass/utilities/_text.scss +0 -5
  478. data/frameworks/compass/stylesheets/compass/utilities/color/_brightness.scss +0 -12
  479. data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +0 -52
  480. data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +0 -44
  481. data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +0 -38
  482. data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +0 -65
  483. data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +0 -16
  484. data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +0 -2
  485. data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +0 -1
  486. data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +0 -18
  487. data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +0 -3
  488. data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +0 -3
  489. data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +0 -3
  490. data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +0 -3
  491. data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +0 -3
  492. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +0 -3
  493. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +0 -3
  494. data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +0 -92
  495. data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +0 -81
  496. data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +0 -22
  497. data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +0 -38
  498. data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +0 -9
  499. data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +0 -3
  500. data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +0 -3
  501. data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +0 -3
  502. data/frameworks/compass/templates/ellipsis/ellipsis.sass +0 -9
  503. data/frameworks/compass/templates/ellipsis/manifest.rb +0 -27
  504. data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +0 -14
  505. data/frameworks/compass/templates/extension/manifest.rb +0 -26
  506. data/frameworks/compass/templates/extension/stylesheets/main.sass +0 -1
  507. data/frameworks/compass/templates/extension/templates/project/manifest.rb +0 -2
  508. data/frameworks/compass/templates/extension/templates/project/screen.sass +0 -2
  509. data/frameworks/compass/templates/project/USAGE.markdown +0 -32
  510. data/frameworks/compass/templates/project/ie.sass +0 -6
  511. data/frameworks/compass/templates/project/manifest.rb +0 -4
  512. data/frameworks/compass/templates/project/print.sass +0 -6
  513. data/frameworks/compass/templates/project/screen.sass +0 -7
  514. data/lib/compass/browser_support.rb +0 -62
  515. data/lib/compass/caniuse.rb +0 -283
  516. data/lib/compass/configuration.rb +0 -91
  517. data/lib/compass/configuration/data.rb +0 -193
  518. data/lib/compass/configuration/defaults.rb +0 -187
  519. data/lib/compass/configuration/inheritance.rb +0 -304
  520. data/lib/compass/configuration/paths.rb +0 -19
  521. data/lib/compass/exec/switch_ui.rb +0 -179
  522. data/lib/compass/sass_extensions/functions/colors.rb +0 -67
  523. data/lib/compass/sass_extensions/functions/constants.rb +0 -74
  524. data/lib/compass/sass_extensions/functions/cross_browser_support.rb +0 -269
  525. data/lib/compass/sass_extensions/functions/display.rb +0 -32
  526. data/lib/compass/sass_extensions/functions/enumerate.rb +0 -7
  527. data/lib/compass/sass_extensions/functions/env.rb +0 -59
  528. data/lib/compass/sass_extensions/functions/font_files.rb +0 -41
  529. data/lib/compass/sass_extensions/functions/gradient_support.rb +0 -611
  530. data/lib/compass/sass_extensions/functions/image_size.rb +0 -114
  531. data/lib/compass/sass_extensions/functions/inline_image.rb +0 -64
  532. data/lib/compass/sass_extensions/functions/lists.rb +0 -101
  533. data/lib/compass/sass_extensions/functions/math.rb +0 -93
  534. data/lib/compass/sass_extensions/functions/selectors.rb +0 -64
  535. data/lib/compass/sass_extensions/functions/urls.rb +0 -297
  536. data/lib/compass/sass_extensions/monkey_patches.rb +0 -3
  537. data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +0 -124
  538. data/lib/compass/sass_extensions/monkey_patches/traversal.rb +0 -23
@@ -1,135 +0,0 @@
1
- // Based on [Eric Meyer's reset](http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/)
2
- // Global reset rules.
3
- // For more specific resets, use the reset mixins provided below
4
- //
5
- // *Please Note*: tables still need `cellspacing="0"` in the markup.
6
- @mixin global-reset {
7
- html, body, div, span, applet, object, iframe,
8
- h1, h2, h3, h4, h5, h6, p, blockquote, pre,
9
- a, abbr, acronym, address, big, cite, code,
10
- del, dfn, em, font, img, ins, kbd, q, s, samp,
11
- small, strike, strong, sub, sup, tt, var,
12
- dl, dt, dd, ol, ul, li,
13
- fieldset, form, label, legend,
14
- table, caption, tbody, tfoot, thead, tr, th, td {
15
- @include reset-box-model;
16
- @include reset-font; }
17
- body {
18
- @include reset-body; }
19
- ol, ul {
20
- @include reset-list-style; }
21
- table {
22
- @include reset-table; }
23
- caption, th, td {
24
- @include reset-table-cell; }
25
- q, blockquote {
26
- @include reset-quotation; }
27
- a img {
28
- @include reset-image-anchor-border; } }
29
-
30
- // Reset all elements within some selector scope. To reset the selector itself,
31
- // mixin the appropriate reset mixin for that element type as well. This could be
32
- // useful if you want to style a part of your page in a dramatically different way.
33
- //
34
- // *Please Note*: tables still need `cellspacing="0"` in the markup.
35
- @mixin nested-reset {
36
- div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
37
- pre, a, abbr, acronym, address, code, del, dfn, em, img,
38
- dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tbody, tfoot, thead, tr {
39
- @include reset-box-model;
40
- @include reset-font; }
41
- table {
42
- @include reset-table; }
43
- caption, th, td {
44
- @include reset-table-cell; }
45
- q, blockquote {
46
- @include reset-quotation; }
47
- a img {
48
- @include reset-image-anchor-border; } }
49
-
50
- // Reset the box model measurements.
51
- @mixin reset-box-model {
52
- margin: 0;
53
- padding: 0;
54
- border: 0;
55
- outline: 0; }
56
-
57
- // Reset the font and vertical alignment.
58
- @mixin reset-font {
59
- font: {
60
- weight: inherit;
61
- style: inherit;
62
- size: 100%;
63
- family: inherit; };
64
- vertical-align: baseline; }
65
-
66
- // Resets the outline when focus.
67
- // For accessibility you need to apply some styling in its place.
68
- @mixin reset-focus {
69
- outline: 0; }
70
-
71
- // Reset a body element.
72
- @mixin reset-body {
73
- line-height: 1;
74
- color: black;
75
- background: white; }
76
-
77
- // Reset the list style of an element.
78
- @mixin reset-list-style {
79
- list-style: none; }
80
-
81
- // Reset a table
82
- @mixin reset-table {
83
- border-collapse: separate;
84
- border-spacing: 0;
85
- vertical-align: middle; }
86
-
87
- // Reset a table cell (`th`, `td`)
88
- @mixin reset-table-cell {
89
- text-align: left;
90
- font-weight: normal;
91
- vertical-align: middle; }
92
-
93
- // Reset a quotation (`q`, `blockquote`)
94
- @mixin reset-quotation {
95
- quotes: "" "";
96
- &:before, &:after {
97
- content: ""; } }
98
-
99
- // Resets the border.
100
- @mixin reset-image-anchor-border {
101
- border: none; }
102
-
103
- // Unrecognized elements are displayed inline.
104
- // This reset provides a basic reset for html5 elements
105
- // so they are rendered correctly in browsers that don't recognize them
106
- // and reset in browsers that have default styles for them.
107
- @mixin reset-html5 {
108
- #{elements-of-type(html5-block)} {
109
- @include reset-box-model;
110
- display: block; } }
111
-
112
- // Resets the display of inline and block elements to their default display
113
- // according to their tag type. Elements that have a default display that varies across
114
- // versions of html or browser are not handled here, but this covers the 90% use case.
115
- // Usage Example:
116
- //
117
- // // Turn off the display for both of these classes
118
- // .unregistered-only, .registered-only
119
- // display: none
120
- // // Now turn only one of them back on depending on some other context.
121
- // body.registered
122
- // +reset-display(".registered-only")
123
- // body.unregistered
124
- // +reset-display(".unregistered-only")
125
- @mixin reset-display($selector: "", $important: false) {
126
- #{append-selector(elements-of-type("inline"), $selector)} {
127
- @if $important {
128
- display: inline !important; }
129
- @else {
130
- display: inline; } }
131
- #{append-selector(elements-of-type("block"), $selector)} {
132
- @if $important {
133
- display: block !important; }
134
- @else {
135
- display: block; } } }
@@ -1,142 +0,0 @@
1
- // Based on [Eric Meyer's reset 2.0](http://meyerweb.com/eric/tools/css/reset/index.html)
2
- // Global reset rules.
3
- // For more specific resets, use the reset mixins provided below
4
- @mixin global-reset {
5
- html, body, div, span, applet, object, iframe,
6
- h1, h2, h3, h4, h5, h6, p, blockquote, pre,
7
- a, abbr, acronym, address, big, cite, code,
8
- del, dfn, em, img, ins, kbd, q, s, samp,
9
- small, strike, strong, sub, sup, tt, var,
10
- b, u, i, center,
11
- dl, dt, dd, ol, ul, li,
12
- fieldset, form, label, legend,
13
- table, caption, tbody, tfoot, thead, tr, th, td,
14
- article, aside, canvas, details, embed,
15
- figure, figcaption, footer, header, hgroup,
16
- menu, nav, output, ruby, section, summary,
17
- time, mark, audio, video {
18
- @include reset-box-model;
19
- @include reset-font; }
20
- // Unlike Eric's original reset, we reset the html element to be compatible
21
- // with the vertical rhythm mixins.
22
- html {
23
- @include reset-body; }
24
- ol, ul {
25
- @include reset-list-style; }
26
- table {
27
- @include reset-table; }
28
- caption, th, td {
29
- @include reset-table-cell; }
30
- q, blockquote {
31
- @include reset-quotation; }
32
- a img {
33
- @include reset-image-anchor-border; }
34
- @include reset-html5; }
35
-
36
- // Reset all elements within some selector scope. To reset the selector itself,
37
- // mixin the appropriate reset mixin for that element type as well. This could be
38
- // useful if you want to style a part of your page in a dramatically different way.
39
- @mixin nested-reset {
40
- div, span, applet, object, iframe,
41
- h1, h2, h3, h4, h5, h6, p, blockquote, pre,
42
- a, abbr, acronym, address, big, cite, code,
43
- del, dfn, em, img, ins, kbd, q, s, samp,
44
- small, strike, strong, sub, sup, tt, var,
45
- b, u, i, center,
46
- dl, dt, dd, ol, ul, li,
47
- fieldset, form, label, legend,
48
- table, caption, tbody, tfoot, thead, tr, th, td,
49
- article, aside, canvas, details, embed,
50
- figure, figcaption, footer, header, hgroup,
51
- menu, nav, output, ruby, section, summary,
52
- time, mark, audio, video {
53
- @include reset-box-model;
54
- @include reset-font; }
55
- table {
56
- @include reset-table; }
57
- caption, th, td {
58
- @include reset-table-cell; }
59
- q, blockquote {
60
- @include reset-quotation; }
61
- a img {
62
- @include reset-image-anchor-border; } }
63
-
64
- // Reset the box model measurements.
65
- @mixin reset-box-model {
66
- margin: 0;
67
- padding: 0;
68
- border: 0; }
69
-
70
- // Reset the font and vertical alignment.
71
- @mixin reset-font {
72
- font: inherit;
73
- font-size: 100%;
74
- vertical-align: baseline; }
75
-
76
- // Resets the outline when focus.
77
- // For accessibility you need to apply some styling in its place.
78
- @mixin reset-focus {
79
- outline: 0; }
80
-
81
- // Reset a body element.
82
- @mixin reset-body {
83
- line-height: 1; }
84
-
85
- // Reset the list style of an element.
86
- @mixin reset-list-style {
87
- list-style: none; }
88
-
89
- // Reset a table
90
- @mixin reset-table {
91
- border-collapse: collapse;
92
- border-spacing: 0; }
93
-
94
- // Reset a table cell (`th`, `td`)
95
- @mixin reset-table-cell {
96
- text-align: left;
97
- font-weight: normal;
98
- vertical-align: middle; }
99
-
100
- // Reset a quotation (`q`, `blockquote`)
101
- @mixin reset-quotation {
102
- quotes: none;
103
- &:before, &:after {
104
- content: "";
105
- content: none; } }
106
-
107
- // Resets the border.
108
- @mixin reset-image-anchor-border {
109
- border: none; }
110
-
111
- // Unrecognized elements are displayed inline.
112
- // This reset provides a basic reset for block html5 elements
113
- // so they are rendered correctly in browsers that don't recognize them
114
- // and reset in browsers that have default styles for them.
115
- @mixin reset-html5 {
116
- #{elements-of-type(html5-block)} {
117
- display: block; } }
118
-
119
- // Resets the display of inline and block elements to their default display
120
- // according to their tag type. Elements that have a default display that varies across
121
- // versions of html or browser are not handled here, but this covers the 90% use case.
122
- // Usage Example:
123
- //
124
- // // Turn off the display for both of these classes
125
- // .unregistered-only, .registered-only
126
- // display: none
127
- // // Now turn only one of them back on depending on some other context.
128
- // body.registered
129
- // +reset-display(".registered-only")
130
- // body.unregistered
131
- // +reset-display(".unregistered-only")
132
- @mixin reset-display($selector: "", $important: false) {
133
- #{append-selector(elements-of-type("inline"), $selector)} {
134
- @if $important {
135
- display: inline !important; }
136
- @else {
137
- display: inline; } }
138
- #{append-selector(elements-of-type("block"), $selector)} {
139
- @if $important {
140
- display: block !important; }
141
- @else {
142
- display: block; } } }
@@ -1,3 +0,0 @@
1
- @import "links/hover-link";
2
- @import "links/link-colors";
3
- @import "links/unstyled-link";
@@ -1,4 +0,0 @@
1
- @import "lists/horizontal-list";
2
- @import "lists/inline-list";
3
- @import "lists/inline-block-list";
4
- @import "lists/bullets";
@@ -1,4 +0,0 @@
1
- @import "text/ellipsis";
2
- @import "text/nowrap";
3
- @import "text/replacement";
4
- @import "text/force-wrap";
@@ -1,152 +0,0 @@
1
- // @private Default font-size for all browsers
2
- $browser-default-font-size: 16px;
3
-
4
- // Base font size in pixels, if not already defined.
5
- // Should be the same as the font-size of the html element.
6
- $base-font-size: 16px !default;
7
-
8
- // Whether to output fallback values in px when outputting rems.
9
- $rem-with-px-fallback: true !default;
10
-
11
-
12
- // Convert any CSS <length> or <percentage> value to any another.
13
- //
14
- // @param $length
15
- // A css <length> or <percentage> value
16
- //
17
- // @param $to-unit
18
- // String matching a css unit keyword, e.g. 'em', '%', etc.
19
- //
20
- // @param $from-context
21
- // When converting from relative units, the absolute length (in px) to
22
- // which $length refers (e.g. for $lengths in em units, would normally be the
23
- // font-size of the current element).
24
- //
25
- // @param $to-context
26
- // For converting to relative units, the absolute length in px to which the
27
- // output value will refer. Defaults to the same as $from-context, since it is
28
- // rarely needed.
29
- @function convert-length(
30
- $length,
31
- $to-unit,
32
- $from-context: $base-font-size,
33
- $to-context: $from-context
34
- ) {
35
-
36
- $from-unit: unit($length);
37
-
38
- // Optimize for cases where `from` and `to` units are accidentally the same.
39
- @if $from-unit == $to-unit { @return $length; }
40
-
41
- // Context values must be in px so we can determine a conversion ratio for
42
- // relative units.
43
- @if unit($from-context) != 'px' { @warn "Paremeter $from-context must resolve to a value in pixel units."; }
44
- @if unit($to-context) != 'px' { @warn "Parameter $to-context must resolve to a value in pixel units."; }
45
-
46
- // Convert input length to pixels
47
- $px-length: $length;
48
-
49
- @if $from-unit != 'px' {
50
- // Convert relative units using the from-context parameter.
51
- @if $from-unit == 'em' { $px-length: $length * $from-context / 1em }
52
- @else if $from-unit == 'rem' { $px-length: $length * $base-font-size / 1rem }
53
- @else if $from-unit == '%' { $px-length: $length * $from-context / 100% }
54
- @else if $from-unit == 'ex' { $px-length: $length * $from-context / 2ex }
55
- // Convert absolute units using Sass' conversion table.
56
- @else if $from-unit == 'in' or
57
- $from-unit == 'mm' or
58
- $from-unit == 'cm' or
59
- $from-unit == 'pt' or
60
- $from-unit == 'pc' { $px-length: 0px + $length }
61
- // Certain units can't be converted.
62
- @else if $from-unit == 'ch' or
63
- $from-unit == 'vw' or
64
- $from-unit == 'vh' or
65
- $from-unit == 'vmin' {
66
- @warn "#{$from-unit} units can't be reliably converted; Returning original value.";
67
- @return $length;
68
- }
69
- @else {
70
- @warn "#{$from-unit} is an unknown length unit. Returning original value.";
71
- @return $length;
72
- }
73
- }
74
-
75
- // Convert length in pixels to the output unit
76
- $output-length: $px-length;
77
- @if $to-unit != 'px' {
78
- // Relative units
79
- @if $to-unit == 'em' { $output-length: $px-length * 1em / $to-context }
80
- @else if $to-unit == 'rem' { $output-length: $px-length * 1rem / $base-font-size }
81
- @else if $to-unit == '%' { $output-length: $px-length * 100% / $to-context }
82
- @else if $to-unit == 'ex' { $output-length: $px-length * 2ex / $to-context }
83
- // Absolute units
84
- @else if $to-unit == 'in' { $output-length: 0in + $px-length }
85
- @else if $to-unit == 'mm' { $output-length: 0mm + $px-length }
86
- @else if $to-unit == 'cm' { $output-length: 0cm + $px-length }
87
- @else if $to-unit == 'pt' { $output-length: 0pt + $px-length }
88
- @else if $to-unit == 'pc' { $output-length: 0pc + $px-length }
89
- // Non-convertible units
90
- @else if $to-unit == 'ch' or
91
- $to-unit == 'vw' or
92
- $to-unit == 'vh' or
93
- $to-unit == 'vmin' {
94
- @warn "#{$to-unit} units can't be reliably converted; Returning original value.";
95
- @return $length;
96
- }
97
- @else {
98
- @warn "#{$to-unit} is an unknown length unit. Returning original value.";
99
- @return $length;
100
- }
101
- }
102
-
103
- @return $output-length;
104
- }
105
-
106
-
107
- // Output a given style rule containing rem values along with an (optional)
108
- // fallback rule for older browsers (with rem values converted to px).
109
- //
110
- // @param $property
111
- // The css property name.
112
- //
113
- // @param $values
114
- // The value (or space-separated list of values) for the property.
115
- //
116
- // @param $use-px-fallback
117
- // [ true | false ]
118
- //
119
- @mixin rem($property, $values, $use-px-fallback: $rem-with-px-fallback) {
120
- // Create a couple of empty lists as output buffers.
121
- $px-values: ();
122
- $rem-values: ();
123
-
124
- // Loop through the $values list
125
- @each $value in $values {
126
- // For each property value, if it's in rem or px, derive both rem and
127
- // px values for it and add those to the end of the appropriate buffer.
128
- // Ensure all pixel values are rounded to the nearest pixel.
129
- @if type-of($value) == number and not unitless($value) and (unit($value) == px or unit($value) == rem) {
130
- @if unit($value) == px {
131
- $px-values: join($px-values, round($value));
132
- $rem-values: join($rem-values, convert-length($value, rem));
133
- }
134
- @else {
135
- $px-values: join($px-values, round(convert-length($value, px)));
136
- $rem-values: join($rem-values, $value);
137
- }
138
- }
139
- @else {
140
- $px-values: join($px-values, $value);
141
- $rem-values: join($rem-values, $value);
142
- }
143
- }
144
-
145
- // Use pixel fallback for browsers that don't understand rem units.
146
- @if $use-px-fallback {
147
- #{$property}: $px-values;
148
- }
149
-
150
- // Use rem values for everyone else (overrides pixel values).
151
- #{$property}: $rem-values;
152
- }
@@ -1,300 +0,0 @@
1
- @import "compass/support";
2
- @import "compass/layout/grid-background";
3
- @import "compass/typography/units";
4
-
5
- // The default font size for all text in pixels
6
- $base-font-size: 16px !default;
7
-
8
- // The distance between text baselines (vertical rhythm) in pixels.
9
- $base-line-height: 24px !default;
10
-
11
- // The length unit in which to output rhythm values.
12
- // Supported values: px, em, rem. Percent units can't be used since they
13
- // make calculating padding and margins impractical, and percentage borders are
14
- // not valid or supported in css.
15
- $rhythm-unit: 'em' !default;
16
-
17
- // Whether to output fallback values in px when using rem as the rhythm-unit.
18
- $rem-with-px-fallback: true !default;
19
-
20
- // Default values for rhythm borders properties.
21
- // Supports style alone eg. `solid` or list of style and color eg. `solid #aaa`;
22
- $default-rhythm-border-width: 1px !default;
23
- $default-rhythm-border-style: solid !default;
24
-
25
- // Allows the `adjust-font-size-to` mixin and the `lines-for-font-size` function
26
- // to round the line height to the nearest half line height instead of the
27
- // nearest integral line height to avoid large spacing between lines.
28
- $round-to-nearest-half-line: false !default;
29
-
30
- // Ensure there is at least this many pixels
31
- // of vertical padding above and below the text.
32
- $min-line-padding: 2px !default;
33
-
34
- // The leader is the amount of whitespace in a line.
35
- // It might be useful in your calculations.
36
- $base-leader: convert-length($base-line-height - $base-font-size, $rhythm-unit, $base-font-size);
37
-
38
- // The half-leader is the amount of whitespace above and below a line.
39
- // It might be useful in your calculations.
40
- $base-half-leader: $base-leader / 2;
41
-
42
- // @private Whether the rhythm output is in absolute units (px) or not (em, rem)
43
- $relative-font-sizing: if($rhythm-unit == px, false, true);
44
-
45
- // Validate units
46
- @if unit($base-font-size) != 'px' { @warn "$base-font-size must resolve to a pixel unit."; }
47
- @if unit($base-line-height) != 'px' { @warn "$base-line-height must resolve to a pixel unit."; }
48
- @if $rhythm-unit != 'px' and $rhythm-unit != 'em' and $rhythm-unit != 'rem' {
49
- @warn "$rhythm-unit must be `px`, `em` or `rem`.";
50
- }
51
-
52
-
53
- // Calculate rhythm units.
54
- @function rhythm($lines: 1, $font-size: $base-font-size, $offset: 0) {
55
- $rhythm: convert-length($lines * $base-line-height - $offset, $rhythm-unit, $font-size);
56
- @if unit($rhythm) == px {
57
- $rhythm: floor($rhythm);
58
- }
59
- @return $rhythm;
60
- }
61
-
62
- // Calculate the minimum multiple of rhythm units needed to contain the font-size.
63
- @function lines-for-font-size($font-size) {
64
- $lines: if($round-to-nearest-half-line,
65
- ceil(2 * $font-size / $base-line-height) / 2,
66
- ceil($font-size / $base-line-height));
67
- // If lines are cramped include some extra lead.
68
- @if ($lines * $base-line-height - $font-size) < ($min-line-padding * 2) {
69
- $lines: $lines + if($round-to-nearest-half-line, 0.5, 1);
70
- }
71
- @return $lines;
72
- }
73
-
74
-
75
- // @private Outputs rhythm values. For rem units, outputs pixel fallbacks
76
- // by default.
77
- @mixin output-rhythm($property, $values) {
78
- @if $rhythm-unit == rem and $rem-with-px-fallback {
79
- @include rem($property, $values);
80
- }
81
- @else {
82
- $output: ();
83
- @each $value in $values {
84
- @if unit($value) == px {
85
- // Ensure all pixel values are rounded to the nearest pixel.
86
- $output: join($output, round($value));
87
- }
88
- @else {
89
- $output: join($output, $value);
90
- }
91
- }
92
- #{$property}: $output;
93
- }
94
- }
95
-
96
- // Establishes a font baseline for the given font-size.
97
- @mixin establish-baseline($font-size: $base-font-size) {
98
- $relative-size: 100% * ($font-size / $browser-default-font-size);
99
-
100
- @if support-legacy-browser(ie, "6") and (not $relative-font-sizing) {
101
- // IE 6 refuses to resize fonts set in pixels and it weirdly resizes fonts
102
- // whose root is set in ems. So we set the root font size in percentages of
103
- // the default font size, even if we are using absolute sizes elsewhere.
104
- * html { font-size: $relative-size; }
105
- }
106
- html {
107
- font-size: if($relative-font-sizing, $relative-size, $font-size);
108
-
109
- // Webkit has a bug that prevents line-height being set in rem on <html>;
110
- // To work around this and simplify output, we can set initial line-height
111
- // in ems for all relative rhythm units, even when $rhythm-unit is `rem`.
112
- @if $relative-font-sizing {
113
- line-height: convert-length($base-line-height, em);
114
- }
115
- @else {
116
- line-height: round($base-line-height);
117
- }
118
- }
119
- }
120
-
121
- // Resets the baseline to 1 rhythm unit
122
- // Does not work on elements whose font-size is different from $base-font-size.
123
- //
124
- // @deprecated This mixin will be removed in the next release.
125
- // Please use `adjust-leading-to(1)` instead.
126
- @mixin reset-baseline($font-size: $base-font-size) {
127
- @include adjust-leading-to(1, $font-size);
128
- }
129
-
130
- // Show a background image that can be used to debug your alignments.
131
- // As this is a development feature, this mixin never outputs pixel fallbacks
132
- // for rem output.
133
- // Include the $img argument if you would rather use your own image than the
134
- // Compass default gradient image.
135
- @mixin debug-vertical-alignment($img: false) {
136
- @if $img {
137
- background: image-url($img);
138
- }
139
- @else {
140
- @include baseline-grid-background(rhythm());
141
- }
142
- }
143
-
144
- // Adjust a block to have a different font size and line height to maintain the
145
- // rhythm. $lines specifies how many multiples of the baseline rhythm each line
146
- // of this font should use up. It does not have to be an integer, but it
147
- // defaults to the smallest integer that is large enough to fit the font.
148
- // Use $from-size to adjust from a font-size other than the base font-size.
149
- @mixin adjust-font-size-to($to-size, $lines: auto, $from-size: $base-font-size) {
150
- $to-size: convert-length($to-size, px, $from-size);
151
- @if $lines == auto {
152
- $lines: lines-for-font-size($to-size);
153
- }
154
- @include output-rhythm(font-size, convert-length($to-size, $rhythm-unit, $from-size));
155
- @include adjust-leading-to($lines, $to-size);
156
- }
157
-
158
- // Adjust a block to have different line height to maintain the rhythm.
159
- // $lines specifies how many multiples of the baseline rhythm each line of this
160
- // font should use up. It does not have to be an integer, but it defaults to the
161
- // smallest integer that is large enough to fit the font.
162
- @mixin adjust-leading-to($lines, $font-size: $base-font-size) {
163
- @include output-rhythm(line-height, rhythm($lines, $font-size));
164
- }
165
-
166
- // Apply leading whitespace. The $property can be margin or padding.
167
- @mixin leader($lines: 1, $font-size: $base-font-size, $property: margin) {
168
- @include output-rhythm(#{$property}-top, rhythm($lines, $font-size));
169
- }
170
-
171
- // Apply leading whitespace as padding.
172
- @mixin padding-leader($lines: 1, $font-size: $base-font-size) {
173
- @include output-rhythm(padding-top, rhythm($lines, $font-size));
174
- }
175
-
176
- // Apply leading whitespace as margin.
177
- @mixin margin-leader($lines: 1, $font-size: $base-font-size) {
178
- @include output-rhythm(margin-top, rhythm($lines, $font-size));
179
- }
180
-
181
- // Apply trailing whitespace. The $property can be margin or padding.
182
- @mixin trailer($lines: 1, $font-size: $base-font-size, $property: margin) {
183
- @include output-rhythm(#{$property}-bottom, rhythm($lines, $font-size));
184
- }
185
-
186
- // Apply trailing whitespace as padding.
187
- @mixin padding-trailer($lines: 1, $font-size: $base-font-size) {
188
- @include output-rhythm(padding-bottom, rhythm($lines, $font-size));
189
- }
190
-
191
- // Apply trailing whitespace as margin.
192
- @mixin margin-trailer($lines: 1, $font-size: $base-font-size) {
193
- @include output-rhythm(margin-bottom, rhythm($lines, $font-size));
194
- }
195
-
196
- // Shorthand mixin to apply whitespace for top and bottom margins and padding.
197
- @mixin rhythm(
198
- $leader: 1,
199
- $padding-leader: 0,
200
- $padding-trailer: $padding-leader,
201
- $trailer: $leader,
202
- $font-size: $base-font-size
203
- ) {
204
- @include leader($leader, $font-size);
205
- @include padding-leader($padding-leader, $font-size);
206
- @include padding-trailer($padding-trailer, $font-size);
207
- @include trailer($trailer, $font-size);
208
- }
209
-
210
- // Shorthand mixin to apply whitespace for top and bottom margins.
211
- @mixin rhythm-margins(
212
- $leader: 1,
213
- $trailer: $leader,
214
- $font-size: $base-font-size
215
- ) {
216
- @include leader($leader, $font-size);
217
- @include trailer($trailer, $font-size);
218
- }
219
-
220
- // Shorthand mixin to apply whitespace for top and bottom padding.
221
- @mixin rhythm-padding(
222
- $padding-leader: 1,
223
- $padding-trailer: $padding-leader,
224
- $font-size: $base-font-size
225
- ) {
226
- @include padding-leader($padding-leader, $font-size);
227
- @include padding-trailer($padding-trailer, $font-size);
228
- }
229
-
230
- // Apply a border and whitespace to any side without destroying the vertical
231
- // rhythm. The whitespace must be greater than the width of the border.
232
- @mixin apply-side-rhythm-border(
233
- $side,
234
- $width: $default-rhythm-border-width,
235
- $lines: 1,
236
- $font-size: $base-font-size,
237
- $border-style: $default-rhythm-border-style
238
- ) {
239
- // If applying borders to all sides, use shorthand properties
240
- $border-prop: if($side == all, border, border-#{$side});
241
- @include output-rhythm(#{$border-prop}-width, convert-length($width, $rhythm-unit, $font-size));
242
- #{$border-prop}-style: nth($border-style, 1);
243
- @if type-of($border-style) == list and length($border-style) > 1 {
244
- #{$border-prop}-color: nth($border-style, 2);
245
- }
246
- $padding-prop: if($side == all, padding, padding-#{$side});
247
- @include output-rhythm(#{$padding-prop}, rhythm($lines, $font-size, $offset: $width));
248
- }
249
-
250
- // Apply a leading border.
251
- // $border-style and $width are deprecated and will be removed in a future version of Compass.
252
- @mixin leading-border(
253
- $width: $default-rhythm-border-width,
254
- $lines: 1,
255
- $font-size: $base-font-size,
256
- $border-style: $default-rhythm-border-style
257
- ) {
258
- @include apply-side-rhythm-border(top, $width, $lines, $font-size, $border-style);
259
- }
260
-
261
- // Apply a trailing border.
262
- @mixin trailing-border(
263
- $width: $default-rhythm-border-width,
264
- $lines: 1,
265
- $font-size: $base-font-size,
266
- $border-style: $default-rhythm-border-style
267
- ) {
268
- @include apply-side-rhythm-border(bottom, $width, $lines, $font-size, $border-style);
269
- }
270
-
271
- // Apply both leading and trailing borders.
272
- @mixin horizontal-borders(
273
- $width: $default-rhythm-border-width,
274
- $lines: 1,
275
- $font-size: $base-font-size,
276
- $border-style: $default-rhythm-border-style
277
- ) {
278
- @include leading-border($width, $lines, $font-size, $border-style);
279
- @include trailing-border($width, $lines, $font-size, $border-style);
280
- }
281
-
282
- // Alias for `horizontal-borders` mixin.
283
- @mixin h-borders(
284
- $width: $default-rhythm-border-width,
285
- $lines: 1,
286
- $font-size: $base-font-size,
287
- $border-style: $default-rhythm-border-style
288
- ) {
289
- @include horizontal-borders($width, $lines, $font-size, $border-style);
290
- }
291
-
292
- // Apply borders and whitespace equally to all sides.
293
- @mixin rhythm-borders(
294
- $width: $default-rhythm-border-width,
295
- $lines: 1,
296
- $font-size: $base-font-size,
297
- $border-style: $default-rhythm-border-style
298
- ) {
299
- @include apply-side-rhythm-border(all, $width, $lines, $font-size, $border-style);
300
- }