As áreas de texto no Drupal 7 são redimensionáveis por padrão. Gostaria de desativar isso, mas quando verifiquei uma área de texto com o Firebug, não consegui encontrar o CSS que estava redimensionando.
Como impedir que as áreas de texto sejam redimensionadas?
theme('textarea')
ou causaria um loop infinito; ele precisa chamartheme_textarea()
ou a função de tema que foi configurada a partir de outro módulo como substituição detheme_textarea()
.unset($element['#resizable']);
vez de$element['#resizable'] = false;
. Se você olhar para o código paratheme_textarea()
que definitivamente deve trabalhar$element
contém uma matriz chamadaelement
, assim que este funcionou:$element['element']['#resizable'] = false;
Se você precisar apenas de compatibilidade com CSS3, poderá usar o seguinte CSS:
Ou, se você precisar desativar o redimensionamento em uma área de texto específica, adicione o ID dessa área de texto:
fonte
Substituir isso no tema é uma alteração de última hora, na qual os módulos não terão chance de reagir.
É igualmente fácil fazer isso por meio de um módulo e um
#process
retorno de chamada:Isso dá a módulos como o Wysiwyg a chance de perceber que uma área de texto não deve ter um grippie, para evitar anexar esse comportamento ao desativar um editor.
fonte
Implemente isso em seu TEMA. Isso forçará o
#resizable
toFALSE
e impedirá que o JS e a marcação sejam renderizados.A resposta aceita está próxima, mas as funções theme_ * não devem ser chamadas diretamente, pois podem ignorar as funções de processo / pré-processo sem querer
fonte
Você pode adicionar CSS embutido personalizado ao seu formulário, para ocultar os grippies:
fonte
Um novo módulo chamado Disable Resizable Textarea foi lançado agora.
É muito fácil de configurar. Basta editar o campo desejado e você verá a opção "Desativar # redimensionável propriedade dessa área de texto". Você também pode desativar o redimensionamento do resumo, se o campo for do tipo "Texto longo com resumo".
fonte
Você pode alterar o nó ou comentar.
Confira o código de exemplo e os comentários abaixo:
Para mozilla e chrome, ainda podemos ver o problema. coloque css hack.
fonte
Recentemente, eu também estava resolvendo esse problema e descobri essas 2 soluções:
Primeiro, eu prefiro o mais: use esse código no seu tema
template.php
e todos os grippies e textarea.js desaparecerão:Não se esqueça de alterar THEMENAME para o nome do seu tema e liberar todos os caches.
A segunda maneira é instalar o módulo Desative a área de texto redimensionável, mas tento manter o número de módulos nas minhas instalações o mais baixo possível.
fonte