none
Temas em CSS RRS feed

  • Pergunta

  • Não sei por onde começar, eu preciso gravar o CSS que o usuário personalizar para aplica-lo quando ele acessar o site.

    Por exemplo, vou ter alguns CSS customizaveis, o que eu quero saber é como eu faço isso, eu gravo o CSS no servidor identificando pelo ID do usuário? ao carregar a página eu aplico esse CSS?

    Se for isso, eu apenas preciso saber como gravo esse arquivo no servidor e como em tempo de execução eu carrego esse CSS?

    segunda-feira, 8 de abril de 2013 14:09

Respostas

  • Carlos,

    Se não for um componente asp.net, primeiramente tem que marcá-lo com runat="server".

    Segue exemplo do tratamento em aspx e code behind:

    Aspx:

    .classeTeste
    {
          background-color:black;
    }
    
    <div id="divTeste" runat="server">
           teste
    </div>

    Code behind:

    //adicionar o estilo in-line
    divTeste.Style.Add("background-color", "red");
                    
    //aplicar uma classe css
    divTeste.Attributes.Add("class", "classeTeste");


    Dica: in-line prevalece sobre aplicação de class.

    Abraços.


    • Editado Diego Cotini segunda-feira, 8 de abril de 2013 21:17
    • Marcado como Resposta CEFL segunda-feira, 8 de abril de 2013 21:24
    segunda-feira, 8 de abril de 2013 21:14

Todas as Respostas

  • Olá Carlos,

    Você pretende colocar algumas propriedades do CSS para o usuário alterar como ele bem quiser ou você quer disponibilizar alguns arquivos de CSS estáticos e permitir o usuário trocar?

    Caso seja a segunda opção, indico o uso de Themas.

    Para a primeira opção, não tenho sugestão.

    Abraços

    segunda-feira, 8 de abril de 2013 15:02
  • Eu vou colocar para que ele possa alterar, por isso a dúvida, se fosse o contrário, temas pré definidos eu já sei como fazer, agora dinâmicos, de acordo com a escolha do usuário, não, porém, as propriedades eu vou definir.

    Ex:

    divConteudo, vai ser o background-color e color

    divTitulo, a mesma coisa, vão ser umas 5 divs com seus labels internos.

    segunda-feira, 8 de abril de 2013 15:36
  • Entendi Carlos.

    Nesse caso eu só saberia fazer in-line (setando diretamente nos estilos dos componentes) vai code behind.

    Se não encontrar outra maneira, tem essa possibilidade acima.

    Abraços

    segunda-feira, 8 de abril de 2013 16:08
  • Como eu troco o CSS via code behind, em C#?

    segunda-feira, 8 de abril de 2013 20:26
  • Carlos,

    Se não for um componente asp.net, primeiramente tem que marcá-lo com runat="server".

    Segue exemplo do tratamento em aspx e code behind:

    Aspx:

    .classeTeste
    {
          background-color:black;
    }
    
    <div id="divTeste" runat="server">
           teste
    </div>

    Code behind:

    //adicionar o estilo in-line
    divTeste.Style.Add("background-color", "red");
                    
    //aplicar uma classe css
    divTeste.Attributes.Add("class", "classeTeste");


    Dica: in-line prevalece sobre aplicação de class.

    Abraços.


    • Editado Diego Cotini segunda-feira, 8 de abril de 2013 21:17
    • Marcado como Resposta CEFL segunda-feira, 8 de abril de 2013 21:24
    segunda-feira, 8 de abril de 2013 21:14
  • In-line para mim vai atender perfeitamente, já que pretendo armazenar os valores em um tabela e em tempo de execução carrega-los.

    Valeo Diogo

    segunda-feira, 8 de abril de 2013 21:23