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

Sign up to get free protection for your applications and to get access to all the features.
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
- }