Stylesheet Guideline
Porque devo usar ou criar um Clóvis Neto
Clóvis Neto
Web Developer Engineer
clovisdasilvaneto.github.io/all-animation
Que tal participar?
Quem estiliza com CSS?
Quem utiliza algum style guide?
Quem já criou seu próprio guideline?
Quem sabe CSS?
Vocês não sabem css
Ninguém sabe css
Css é muito fácil!
E por ser fácil...
- Não damos a devida atenção
- Não usamos nenhum padrão
- Não procuramos nos aprofundar
Acabamos transformando
O que deveria ser...
STYLESHEET
STYLESHIT
E agora?
fuck
KEEP CALM!
"CSS is not a pretty language. While it is simple to learn and get started with, it soon becomes problematic at any reasonable scale. There isn’t much we can do to change how CSS works, but we can make changes to the way we author and structure it.
In working on large, long-running projects, with dozens of developers of differing specialities and abilities, it is important that we all work in a unified"
"CSS não é uma linguagem bonita. Embora seja simples de aprender e começar a usar, logo se torna problemático em qualquer escala razoável. Não há muito que possamos fazer para mudar a forma como funciona CSS, mas podemos fazer alterações na maneira de como o autor lhe escreve.
Ao trabalhar em grandes empresas, de longa execução projetos, com vários desenvolvedores de diferentes especialidades e habilidades, é importante que todos nós trabalhamos de forma unificada."
Criando um styleguide
Vejamos os principais conceitos
Table of Contents
80 Characteres Wide
Titling
O titulo da seção é prefixado com #, para nos permitir fazer buscas mais específicas
Para quem não modulariza
Padrões em cada declaração de propriedade
.baz {
display: block;
background-color: green;
cor: vermelho;
}
Não fuja dos padrões
.icon - casa {background-position: 0 0; }
.icon - pessoa {background-position: -16px 0; }
.icon - arquivos {background-position: 0 -16px; }
.icon - configurações {background-position: -16px -16px; }
.foo, .foo - bar, .baz
{
display: block;
background-color: green;
color: red}
Recuo
Usando algum pre-processador
Ainda no recuo
Recuo incorreto
Comentários
Comentários em pre-processadores (sprites)
Removendo Comentários
Lembre-se de quando for colocar algum projeto online, sempre suba tudo mimificado.
Nomeclaturas de classes
- Oque sua classe faz
- Onde uma classe pode ser usada
- Com qual classe ela pode ser combinada (.btn .btn-block)
Hífen delimitado
Não use camel case, nem "_"
Reutilisar é importante
Evite usar seletores html
#header h1, #section h1 {
color: red;
}
reutilize
.title {
color: red;
}
Não combine o seletores html com classes
body.home div.header ul {}
Performance também é importante
.list {
color: red;
}
Shit!
.class-0.class-1.class-2.class-3.class-4.class-5.class-6.class-7.class-8.class-9.class-10.class-11.class-12.class-13.class-14.class-15.class-16.class-17.class-18.class-19.class-20.class-21.class-22.class-23.class-24.class-25.class-26.class-27.class-28.class-29.class-30.class-31.class-32.class-33.class-34.class-35.class-36.class-37.class-38.class-39.class-40.class-41.class-42.class-43.class-44.class-45.class-46.class-47.class-48.class-49.class-50.class-51.class-52.class-53.class-54.class-55.class-56.class-57.class-58.class-59.class-60.class-61.class-62.class-63.class-64.class-65.class-66.class-67.class-68.class-69.class-70.class-71.class-72.class-73.class-74.class-75.class-76.class-77.class-78.class-79.class-80.class-81.class-82.class-83.class-84.class-85.class-86.class-87.class-88.class-89.class-90.class-91.class-92.class-93.class-94.class-95.class-96.class-97.class-98.class-99.class-100.class-101.class-102.class-103.class-104.class-105.class-106.class-107.class-108.class-109.class-110.class-111.class-112.class-113.class-114.class-115.class-116.class-117.class-118.class-119.class-120.class-121.class-122.class-123.class-124.class-125.class-126.class-127.class-128.class-129.class-130.class-131.class-132.class-133.class-134.class-135.class-136.class-137.class-138.class-139.class-140.class-141.class-142.class-143.class-144.class-145.class-146.class-147.class-148.class-149.class-150.class-151.class-152.class-153.class-154.class-155.class-156.class-157.class-158.class-159.class-160.class-161.class-162.class-163.class-164.class-165.class-166.class-167.class-168.class-169.class-170.class-171.class-172.class-173.class-174.class-175.class-176.class-177.class-178.class-179.class-180.class-181.class-182.class-183.class-184.class-185.class-186.class-187.class-188.class-189.class-190.class-191.class-192.class-193.class-194.class-195.class-196.class-197.class-198.class-199.class-200.class-201.class-202.class-203.class-204.class-205.class-206.class-207.class-208.class-209.class-210.class-211.class-212.class-213.class-214.class-215.class-216.class-217.class-218.class-219.class-220.class-221.class-222.class-223.class-224.class-225.class-226.class-227.class-228.class-229.class-230.class-231.class-232.class-233.class-234.class-235.class-236.class-237.class-238.class-239.class-240.class-241.class-242.class-243.class-244.class-245.class-246.class-247.class-248.class-249.class-250.class-251.class-252.class-253.class-254.class-255.class-256.class-257.class-258.class-259.class-260.class-261.class-262.class-263.class-264.class-265.class-266.class-267.class-268.class-269.class-270.class-271.class-272.class-273.class-274.class-275.class-276.class-277.class-278.class-279.class-280.class-281.class-282.class-283.class-284.class-285.class-286.class-287.class-288.class-289.class-290.class-291.class-292.class-293.class-294.class-295.class-296.class-297.class-298.class-299.class-300.class-301.class-302.class-303.class-304.class-305.class-306.class-307.class-308.class-309.class-310.class-311.class-312.class-313.class-314.class-315.class-316.class-317.class-318.class-319.class-320.class-321.class-322.class-323.class-324.class-325.class-326.class-327.class-328.class-329.class-330.class-331.class-332.class-333.class-334.class-335.class-336.class-337.class-338.class-339.class-340.class-341.class-342.class-343.class-344.class-345.class-346.class-347.class-348.class-349.class-350.class-351.class-352.class-353.class-354.class-355.class-356.class-357.class-358.class-359.class-360.class-361.class-362.class-363.class-364.class-365.class-366.class-367.class-368.class-369.class-370.class-371.class-372.class-373.class-374.class-375.class-376.class-377.class-378.class-379.class-380.class-381.class-382.class-383.class-384.class-385.class-386.class-387.class-388.class-389.class-390.class-391.class-392.class-393.class-394.class-395.class-396.class-397.class-398.class-399.class-400.class-401.class-402.class-403.class-404.class-405.class-406.class-407.class-408.class-409.class-410.class-411.class-412.class-413.class-414.class-415.class-416.class-417.class-418.class-419.class-420.class-421.class-422.class-423.class-424.class-425.class-426.class-427.class-428.class-429.class-430.class-431.class-432.class-433.class-434.class-435.class-436.class-437.class-438.class-439.class-440.class-441.class-442.class-443.class-444.class-445.class-446.class-447.class-448.class-449.class-450.class-451.class-452.class-453.class-454.class-455.class-456.class-457.class-458.class-459.class-460.class-461.class-462.class-463.class-464.class-465.class-466.class-467.class-468.class-469.class-470.class-471.class-472.class-473.class-474.class-475.class-476.class-477.class-478.class-479.class-480.class-481.class-482.class-483.class-484.class-485.class-486.class-487.class-488.class-489.class-490.class-491.class-492.class-493.class-494.class-495.class-496.class-497.class-498.class-499.class-500.class-501.class-502.class-503.class-504.class-505.class-506.class-507.class-508.class-509.class-510.class-511.class-512.class-513.class-514.class-515.class-516.class-517.class-518.class-519.class-520.class-521.class-522.class-523.class-524.class-525.class-526.class-527.class-528.class-529.class-530.class-531.class-532.class-533.class-534.class-535.class-536.class-537.class-538.class-539.class-540.class-541.class-542.class-543.class-544.class-545.class-546.class-547.class-548.class-549.class-550.class-551.class-552.class-553.class-554.class-555.class-556.class-557.class-558.class-559.class-560.class-561.class-562.class-563.class-564.class-565.class-566.class-567.class-568.class-569.class-570.class-571.class-572.class-573.class-574.class-575.class-576.class-577.class-578.class-579.class-580.class-581.class-582.class-583.class-584.class-585.class-586.class-587.class-588.class-589.class-590.class-591.class-592.class-593.class-594.class-595.class-596.class-597.class-598.class-599.class-600.class-601.class-602.class-603.class-604.class-605.class-606.class-607.class-608.class-609.class-610.class-611.class-612.class-613.class-614.class-615.class-616.class-617.class-618.class-619.class-620.class-621.class-622.class-623.class-624.class-625.class-626.class-627.class-628.class-629.class-630.class-631.class-632.class-633.class-634.class-635.class-636.class-637.class-638.class-639.class-640.class-641.class-642.class-643.class-644.class-645.class-646.class-647.class-648.class-649.class-650.class-651.class-652.class-653.class-654.class-655.class-656.class-657.class-658.class-659.class-660.class-661.class-662.class-663.class-664.class-665.class-666.class-667.class-668.class-669.class-670.class-671.class-672.class-673.class-674.class-675.class-676.class-677.class-678.class-679.class-680.class-681.class-682.class-683.class-684.class-685.class-686.class-687.class-688.class-689.class-690.class-691.class-692.class-693.class-694.class-695.class-696.class-697.class-698.class-699.class-700.class-701.class-702.class-703.class-704.class-705.class-706.class-707.class-708.class-709.class-710.class-711.class-712.class-713.class-714.class-715.class-716.class-717.class-718.class-719.class-720.class-721.class-722.class-723.class-724.class-725.class-726.class-727.class-728.class-729.class-730.class-731.class-732.class-733.class-734.class-735.class-736.class-737.class-738.class-739.class-740.class-741.class-742.class-743.class-744.class-745.class-746.class-747.class-748.class-749.class-750.class-751.class-752.class-753.class-754.class-755.class-756.class-757.class-758.class-759.class-760.class-761.class-762.class-763.class-764.class-765.class-766.class-767.class-768.class-769.class-770.class-771.class-772.class-773.class-774.class-775.class-776.class-777.class-778.class-779.class-780.class-781.class-782.class-783.class-784.class-785.class-786.class-787.class-788.class-789.class-790.class-791.class-792.class-793.class-794.class-795.class-796.class-797.class-798.class-799.class-800.class-801.class-802.class-803.class-804.class-805.class-806.class-807.class-808.class-809.class-810.class-811.class-812.class-813.class-814.class-815.class-816.class-817.class-818.class-819.class-820.class-821.class-822.class-823.class-824.class-825.class-826.class-827.class-828.class-829.class-830.class-831.class-832.class-833.class-834.class-835.class-836.class-837.class-838.class-839.class-840.class-841.class-842.class-843.class-844.class-845.class-846.class-847.class-848.class-849.class-850.class-851.class-852.class-853.class-854.class-855.class-856.class-857.class-858.class-859.class-860.class-861.class-862.class-863.class-864.class-865.class-866.class-867.class-868.class-869.class-870.class-871.class-872.class-873.class-874.class-875.class-876.class-877.class-878.class-879.class-880.class-881.class-882.class-883.class-884.class-885.class-886.class-887.class-888.class-889.class-890.class-891.class-892.class-893.class-894.class-895.class-896.class-897.class-898.class-899.class-900.class-901.class-902.class-903.class-904.class-905.class-906.class-907.class-908.class-909.class-910.class-911.class-912.class-913.class-914.class-915.class-916.class-917.class-918.class-919.class-920.class-921.class-922.class-923.class-924.class-925.class-926.class-927.class-928.class-929.class-930.class-931.class-932.class-933.class-934.class-935.class-936.class-937.class-938.class-939.class-940.class-941.class-942.class-943.class-944.class-945.class-946.class-947.class-948.class-949.class-950.class-951.class-952.class-953.class-954.class-955.class-956.class-957.class-958.class-959.class-960.class-961.class-962.class-963.class-964.class-965.class-966.class-967.class-968.class-969.class-970.class-971.class-972.class-973.class-974.class-975.class-976.class-977.class-978.class-979.class-980.class-981.class-982.class-983.class-984.class-985.class-986.class-987.class-988.class-989.class-990.class-991.class-992.class-993.class-994.class-995.class-996.class-997.class-998.class-999 {
color: blue;
}
.one, .tho, .tree, .four {
color: black;
}
Good!
.dark {
color: black;
}
.positive {
color: blue;
}
Evite usar id's no seu código
Id's não são re-utilizáveis, eles são "anomalias" em questão de modularizarão css
Vantagens de usar
- CSS simples em relação a manutenção
- Folha de estilo escalável
-
Código transparente e legível
-
Sensação familiar com todo o código base
-
Aumento na produtividade (tempo = dinheiro)
Um guia de estilos é uma ferramenta valiosa para as equipes que:
- Constroem e mantém um projeto com um tempo de vida rasoável
- Possuem membros com habilidades e especializações diferentes
- Possuem um grande número de desenvolvedores ativos.
MAS SOU FREELA NÃO TENHO O PORQUE DE USAR
Voltamos as vantagens
Desenvolvimento ágil = Ganho de tempo
Ganho de tempo = Dinheiro
Exemplos bacanas
Google HTML/CSS guideline
Dúvidas
Obrigado!
facebook.com/ClovisDaSilvaNeto
github.com/clovisdasilvaneto
@clovissneto
clovisdasilvaneto.github.io
Stylesheet Guideline
By Clóvis Neto
Stylesheet Guideline
Porque eu devo usar ou criar um
- 1,315